- Static Site Generator: Hugo + TypeScript + MD
- Linting: ESLint + StyleLint +
- Hosting: Cloudflare Pages
- Node 18
If you need help installing and/or managing Node and Yarn versions, check out NVM.
npm install
npm install
installs the necessary node modules for development.
bin/install-precious <path/to/install>
bash bin/install-precious
installs precious which is used for linting code.- To install it directly within the repository you can run
mkdir -p local
to create alocal
folder. Then runbin/install-precious local
to install precious.
You should also install our pre-commit hook. You can do this from your checkout
by running git/setup.sh
. These hooks do things like ensure that the code you
commit is tidy and passes various linter checks.
brew install hugo
It is recommended that you install the latest release of Hugo. For debian and ubuntu users, they offer a .deb file.
Download
Embedded Dart Sass and
make sure it is in your $PATH
. This is necessary for Hugo to process SASS and
SCSS files. See the
Hugo documentation for more
information.
The development server watches files, rebuilds the site, and reloads the browser when files change.
hugo server
npm run lint
Blog posts are written using
markdown, with each post
corresponding to a markdown file in the /content
directory, with
subdirectories for the year and month of publication (e.g., /content/YYYY/MM
).
You can learn more about how blog post files work and how they are formatted in the BLOG-POST-TEMPLATE.md file.