This curriculum is built using Gulp, Handlebars.js, and SCSS. It makes heavy use of Minimill's project template.
Install npm. Then, install gulp:
npm install -g gulp # May require `sudo`
npm install
gem install scss_lint
gulp serve
Relevant gulp commands:
Builds the site into the dist
directory. This includes:
- SCSS w/ linting, sourcemaps and autoprefixing
- JS linting and uglification
- Handlebars to HTML
Runs gulp watch
in the background, and serves the dist
directory at localhost:3000
with automatic reloading using Browsersync.
Deploying to GitHub pages is a little bit of a pain because of relative paths. Here's the current workflow, after committing a fix or change to master
:
git checkout gh-pages
git reset --hard master
- (Correct relative paths in
base.hbs
and_main.scss
by appendingjade/
to the front) gulp build
mv dist/* ./
git add -A
git commit -m "Excellent fix"
git push -f origin gh-pages
And you done.
If you REALLY want to contribute, maybe you can make some configs that will solve this problem...
├── Gulpfile.js # Controls Gulp, used for building the website
├── README.md # This file
├── data.yml # Metadata associated with the site.
├── dist/ # Gulp builds the static site into this directory
├── package.json # Dependencies
└── src/ # All source code
├── font/ # Font files
├── img/ # Images and SVGs
├── js/ # Javascript libraries and scripts
├── partials/ # Handlebars HTML partials that are included / extended
├── sass/ # Stylesheets
└── templates/ # Handlebars HTML files, one per page on the site.