Foundation for Sites is a comprehensive, responsive front-end framework designed for building websites and applications that adapt seamlessly to any device. It provides a robust, customizable grid system, a rich library of Sass mixins for styling, and a collection of pre-built JavaScript plugins for common UI patterns such as accordions, off-canvas menus, and responsive navigation. The current stable version is 6.9.0. Releases appear to follow a somewhat regular cadence, with several updates per year focusing on cleanup, dependency upgrades, and minor enhancements. Key differentiators include its Sass-first approach, strong accessibility support, and the ability to rapidly prototype and move to production, targeting modern web development environments with an emphasis on flexibility and customization.
npm install foundation-sitesVerified import paths — ran on the pinned version, not inferred.
Demonstrates how to import and initialize Foundation Sites JavaScript components using a bundler and TypeScript, including a basic component interaction.
Upgrade your Node.js environment to version 18.0 or newer. Tools like `nvm` (`nvm install 18 && nvm use 18`) can help manage different Node.js versions.
Install `jquery` (`npm install jquery`). If using a bundler, explicitly `import $ from 'jquery';` and ensure it's exposed globally by assigning it to `window.$` and `window.jQuery` before Foundation's JS execution.
Add `node_modules` to your Sass compiler's `load-paths` or `includePaths`. For example, with the Dart Sass CLI, use `sass --load-path=node_modules src/style.scss dist/style.css`. For Webpack, configure your Sass loader with `includePaths: ['node_modules']`.
For support or questions, utilize the official Foundation Discord server or the GitHub Discussions board. Reserve GitHub Issues for verified bug reports or well-defined feature requests after community consultation.
Upgrade Node.js to version 18.0 or higher. Use `nvm install 18 && nvm use 18` or a similar version manager.
Ensure jQuery is installed (`npm install jquery`) and imported/loaded before Foundation's JavaScript. For bundlers, `import $ from 'jquery'; (window as any).$ = $; (window as any).jQuery = $;` is a common pattern.
Configure your Sass build tool to include `node_modules` in its `load-paths`. For example, in `node-sass` or `dart-sass`, provide `['node_modules']` to the `includePaths` option.