Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
A Jekyll theme showcasing the U.S. Web Design System
USWDS Jekyll is a Jekyll theme that wraps the U.S. Web Design System (USWDS) into a ready-made site skeleton for Jekyll-based government and public-sector websites. It takes a Jekyll site with YAML data files and front matter as input and outputs a static HTML site styled with USWDS CSS and JavaScript. The theme is developed by 18F, an office within the General Services Administration (GSA) Technology Transformation Services (TTS), and is distributed as a Ruby Gem. The repository is currently in maintenance mode, accepting only fixes while TTS plans its microsite strategy.
USWDS Jekyll is a Jekyll theme that integrates the U.S. Web Design System (USWDS) into a Jekyll site, providing a set of layouts, includes, and configuration options to build standards-compliant federal and public-sector websites. It takes a Jekyll site with YAML data files and front matter as input and outputs a static HTML site styled with USWDS CSS and JavaScript. The theme is developed by 18F, an office within the General Services Administration (GSA) Technology Transformation Services (TTS), and is distributed as a Ruby Gem. The repository is currently in maintenance mode, accepting only fixes while TTS plans its microsite strategy.
uswds.min.css) and JavaScript (uswds.min.js) and includes them automatically unless overridden by project-level styles and scripts configuration._data/navigation.yml and can be referenced by the header, sidebar, or other components; links support external URLs, CSS classes, and collapsible submenus._includes or _layouts directory, and low-level component templates are separated from concrete implementations for flexible customization.media attributes and async loading._config.yml keys.search_site_handle to the configuration._sass/_uswds-theme-settings.scss, and custom Sass goes in _sass/_uswds-theme-custom-styles.scss.home layout implements the USWDS landing page template with hero, callout, graphics list, and tagline intro sections driven by YAML front matter.page layout supports side navigation and per-page subnavigation, with hash links that work with Kramdown's auto-generated heading IDs.project and team-member layouts render detail pages from front matter fields, and project-list.html and team-list.html includes display aggregations.post layout is identical to page and can be used with Jekyll's standard post workflow.Install the gem by adding gem 'uswds-jekyll' to your Gemfile, run bundle, then set theme: uswds-jekyll in _config.yml. The theme reads configuration from _config.yml and data files in _data/ (such as header.yml, navigation.yml, and identifier.yml) and builds a static site with bundle exec jekyll serve. Development workflows use npm scripts to sync USWDS assets and Sass into the theme directories.
Yes. The theme is open source and distributed as a Ruby Gem on RubyGems, with source code on GitHub under the 18F organization. There are no paid tiers or license fees.
USWDS Jekyll 5.x is only compatible with Jekyll 4.0 and higher. Earlier versions of the theme support older Jekyll releases.
Color and font configuration is handled in _data/theme.yml, which maps USWDS theme tokens to component variables. For advanced changes, you can add USWDS theme settings files to _sass/_uswds-theme-settings.scss and custom Sass to _sass/_uswds-theme-custom-styles.scss.
Yes. Search is provided via Search.gov. You create a Search.gov account, configure your website there, then set the search_site_handle key in _config.yml. The theme also supports Google Analytics and the Digital Analytics Program for traffic measurement.
Yes. While the theme is built around the U.S. Web Design System and used primarily by federal agencies, any Jekyll site can use it. All the layouts, components, and configuration options are generic and not restricted to government domains.
