This site uses the Federalist USWDS Jekyll template. Federalist runs on cloud.gov and supports the development of this template. By leveraging this template cloud.gov get the benefits of a maintained template as well as a way to test out new functionality in the template.
- is accessible to individuals with disabilities;
- has a consistent appearance;
- does not duplicate any legacy websites (the legislation also requires agencies to ensure that legacy websites are regularly reviewed, removed, and consolidated);
- has a search function;
- uses an industry standard secure connection;
- is designed around user needs with data-driven analysis influencing management and development decisions, using qualitative and quantitative data to determine user goals, needs, and behaviors, and continually test the website, web-based form, web-based application, or digital service to ensure that user needs are addressed;
- allows for user customization; and
- is mobile-friendly.
This repository contains the following examples and functionality:
blog/index.html, which manages how the posts are listed. You should then check out
_layouts/post.html to see how individual posts are structured.
_pages folder and change the
permalink at the top of each page. Use sub-folders only when you really need to.
_layouts/data.html. Just create a file in you
_pages folder with the following options:
--- title: Collections Page layout: data permalink: /collections datafile: collections ---
The reference to
datafile referers to the name of the file in
_data/collections.yml and loops through the values. Feel free to modify this as needed.
pages, one does not have a side bar navigation, and the other uses
_includes/sidenav.html. You can enable this option by adding
sidenav: true to your page front matter.
--- title: Document with Sidenav layout: page sidenav: true permalink: /document-with-sidenav ---
--- searchgov: endpoint: https://search.usa.gov # You should not change this. affiliate: federalist-uswds-example # replace this with your search.gov account access_key: your-access-key # This is placeholder. Not private. inline: true #this renders the results on the same domain. Otherwise, it will render the results in the search.gov domain ---
How to edit cloud.gov content
Non-developers should focus on editing markdown content in the
_pagesfolder. Generally most of the cloud.gov content will be in the _docs file.
Pricing updates can go directly into
_data/pricing.ymlfile and if any of the aws services need to be updated that can occur in the
We try to keep configuration options to a minimum so you can easily change functionality. You should review
_config.ymlto see the options that are available to you. There are a few values on top that you need to change. They refer to the agency name and contact information. The rest of
_config.ymlhas a range of more advanced options.
The contents inside
If you look at
package.jsonyou will see that the
npm run federalistcommand that will run when running on the Federalist platform.
Do not edit files in the
_site/folder. These files are auto-generated, and any change you make in the folder will be overwritten.
To edit the look and feel of the site, you need to edit files in
_includes/folder, which render key components, like the menu, side navigation, and logos.
Some pages are styled to be
.htmlrather than markdown you can find these in the
homepagecan be editted more directly by manipulating the
pricingpage is mostly edited with the
getting-startedpage is in the
_layouts/may require the least amount of editing of all the files since they are primarily responsible for printing the content.
search/index.htmlis used by search.gov.
Updating content on your own computer
$ git clone https://github.com/18F/cg-site-federalist $ cd cg-site-federalist
Note that when built by Federalist,
npm run federalist is used instead of the
Install dependencies and run app
$ npm install $ bundle install $ npm start
Open your web browser to localhost:4000 to view your site.
$ npm test
Technologies you should be familiarize yourself with
- Jekyll - The primary site engine that builds your code and content.
- Front Matter - The top of each page/post includes keywords within
--tags. This is meta data that helps Jekyll build the site, but you can also use it to pass custom variables.
- U.S. Web Design System v 2.0
See CONTRIBUTING for additional information.
This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication.
All contributions to this project will be released under the CC0 dedication. By submitting a pull request, you are agreeing to comply with this waiver of copyright interest.
See CONTRIBUTING for additional information.