/website-1

Primary LanguageCSSGNU Affero General Public License v3.0AGPL-3.0

Certbot Website

Website for EFF's Certbot project. Uses Jekyll for static site generation.

Build Status

Getting Started

Install

  1. Install ruby 2.0+, node, and npm 2.0+.
  2. gem install jekyll (requires v3.0 or higher)
  3. sudo npm install gulp -g
  4. npm install

If you want to build a copy of the documentation for your local mirror of the Cerbot website, also do:

  1. git submodule init
  2. git submodule update
  3. sudo ./_docs.sh depend
  4. Install pdflatex e.g. via sudo apt install texlive texlive-latex-extra

Run

To watch for changes and reload assets as needed via BrowserSync: gulp watch

To build the site once: gulp build

To build for production (minified javascript, no source maps): gulp build --env production The environment can also be set in the NODE_ENV environment variable. See https://github.com/gunpowderlabs/gulp-environments.

Editing content

Basic pages

Most pages can be edited as markdown files.

Use /index.html to edit the homepage. Use /[RELATIVE_URL]/index.html to edit internal pages.

Installation instructions

Are generated by JavaScript with Mustache, and can be edited in _scripts/instruction-widget.

FAQ

FAQ entries are a Jekyll collection. Add FAQ entries (question and answer pairs) as markdown files to the _faq_entries directory.

FAQ entries require two variables to be set in the front matter:

  • title: the "Question" the FAQ entry answers
  • weight: the position of this entry on the page - lighter FAQ entries will float to the top.

Testing

Certbot/website uses html-proofer to validate the html output of the build.

To install:

gem install html-proofer

To run the tests:

htmlproofer ./_site --empty-alt-ignore true --file-ignore /_site/docs/_modules/,./_site/docs/api/display.html,./_site/docs/using.html,./_site/docs/contributing.html,./_site/docs/genindex.html,./_site/docs/intro.html,./_site/docs/py-modindex.html,./_site/docs/search.html --allow-hash-href true

(Files with known issues are ignored.)