Foundation
Foundation — это открытая платформа для создания веб-стандартов, фреймворков и инструментов, разрабатываемая одноимённой некоммерческой организацией (Foundation, Inc.). Основная цель проекта — обеспечение совместимости, доступности и долгосрочной стабильности веб-технологий, а также поддержка сообщества разработчиков. Платформа включает в себя набор спецификаций, библиотек и утилит, ориентированных на упрощение создания веб-приложений и сайтов, соответствующих современным требованиям.
История
Проект Foundation был основан в 2012 году группой разработчиков, ранее участвовавших в создании популярного CSS-фреймворка ZURB Foundation. После того как ZURB Foundation перешёл под коммерческое управление, часть сообщества решила создать независимую открытую альтернативу. В 2013 году была выпущена первая стабильная версия Foundation 5, которая включала в себя сетку, типографику, формы и элементы интерфейса, адаптированные под мобильные устройства.
В 2015 году вышла версия Foundation 6, в которой была полностью переработана архитектура: фреймворк стал модульным, что позволило разработчикам подключать только необходимые компоненты. В 2018 году проект был переименован в Foundation for Sites, чтобы отличать его от других продуктов экосистемы (Foundation for Emails, Foundation for Apps). В 2020 году организация Foundation, Inc. объявила о переходе к модели управления, основанной на консенсусе сообщества, и начала разработку нового поколения платформы — Foundation 7, которая была выпущена в 2022 году.
Архитектура и компоненты
Foundation состоит из нескольких ключевых модулей, которые могут использоваться как вместе, так и по отдельности.
Ядро (Core)
Ядро включает в себя базовые стили, сброс CSS (normalize.css), типографику, а также систему сеток (grid). Сетка Foundation основана на 12-колоночной системе с поддержкой гибких (flexbox) и адаптивных (responsive) макетов. В версии 7 добавлена поддержка CSS Grid Layout.
Компоненты интерфейса
Платформа предоставляет набор готовых компонентов: кнопки, формы, навигационные панели, аккордеоны, вкладки, модальные окна, карусели, выпадающие меню и другие. Каждый компонент имеет встроенную поддержку доступности (ARIA-атрибуты, клавиатурная навигация).
Утилиты
В состав Foundation входят утилиты для работы с медиазапросами, анимацией, цветами, отступами, а также функции для JavaScript (например, для обработки событий, анимации, работы с DOM). Утилиты реализованы как Sass-миксины и JavaScript-модули.
JavaScript-плагины
Foundation включает в себя набор JavaScript-плагинов, написанных на чистом JavaScript (без jQuery). Они обеспечивают интерактивность компонентов: открытие/закрытие модальных окон, переключение вкладок, анимацию, валидацию форм и т.д. Плагины могут быть загружены как отдельные модули через систему сборки (Webpack, Parcel, Vite).
Версии и выпуски
Основные версии Foundation:
- Foundation 5 (2013) — первая стабильная версия, основанная на Sass и jQuery.
- Foundation 6 (2015) — модульная архитектура, отказ от обязательной зависимости от jQuery, поддержка flexbox.
- Foundation 7 (2022) — полная переработка на основе CSS Grid, улучшенная поддержка доступности, новый API для JavaScript-плагинов, интеграция с современными сборщиками.
Каждая версия поддерживается в течение двух лет после выхода следующей мажорной версии. На текущий момент (2024 год) актуальной является версия 7.2.
Применение
Foundation используется для создания веб-сайтов, веб-приложений, прототипов и интерфейсов. Основные области применения:
- Корпоративные сайты — благодаря модульности и адаптивности Foundation подходит для крупных проектов с разными типами контента.
- Веб-приложения — платформа предоставляет инструменты для создания сложных интерфейсов с динамическими компонентами.
- Прототипирование — благодаря готовым компонентам и утилитам Foundation позволяет быстро создавать макеты и прототипы.
- Email-рассылки — отдельный продукт Foundation for Emails (ранее Ink) предоставляет шаблоны и инструменты для создания адаптивных писем.
Сообщество и лицензия
Foundation распространяется под лицензией MIT, что позволяет использовать её в коммерческих и некоммерческих проектах без ограничений. Разработка ведётся на GitHub, где сообщество может предлагать изменения, сообщать об ошибках и участвовать в обсуждениях. Организация Foundation, Inc. управляется советом избранных членов сообщества, которые принимают решения о развитии платформы.
Критика
Основные претензии к Foundation связаны с её сложностью по сравнению с более лёгкими фреймворками, такими как Bootstrap. Критики отмечают, что Foundation требует больше времени на изучение и настройку, особенно для начинающих разработчиков. Также отмечается, что документация иногда отстаёт от выхода новых версий, что затрудняет работу с новыми функциями. В то же время сторонники платформы подчёркивают её гибкость и мощные возможности для кастомизации, особенно в крупных проектах.
Интересные факты
- Foundation используется в проектах таких компаний, как Mozilla, Adobe, и NASA.
- Платформа поддерживает работу с системами контроля версий (Git) и непрерывной интеграции (CI/CD).
- Foundation for Emails (ранее Ink) является одним из немногих фреймворков, специализирующихся на адаптивной вёрстке писем.
- В 2021 году проект Foundation был включён в список «Top 100 Open Source Projects» по версии GitHub.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →