This is the codebase for my personal blog at https://www.paulfioravanti.com. Created with Jekyll.
I have written about setting up various facets of this blog, which you can find at the following posts:
git clone git@github.com:paulfioravanti/paulfioravanti.github.io.git
cd paulfioravanti.github.io
bundle install
This app uses the following dependencies during development:
- Sass Lint: make sure styling syntax conforms to community standards. Note that the gem version is deprecated
- htmllint (via htmllint-cli): make sure HTML syntax conforms to community standards
- markdownlint (via markdownlint-cli): make sure Markdown syntax conforms to community standards
- HTMLProofer: make sure HTML rendered files are accurate and do not have broken links etc
Install Node-based dependencies in the following way, and remember to
re-shim whatever version manager is being used for Node (I use asdf
), or
add the bin
folder of the Node installation to the $PATH
, otherwise
executables like sass-lint
won't be available:
npm install --global sass-lint htmllint-cli markdownlint-cli
asdf reshim nodejs
HTMLProofer is a Ruby gem and so Bundler will bring it into the project.
bundle exec jekyll serve --incremental --drafts --port 5000 --livereload
Then, navigate to http://localhost:5000
This project uses Guard to monitor file changes.
Start Guard with the following command:
bundle exec guard
This blog currently uses the Minimal Mistakes theme.
Previously, it used the Minima theme, as that seemed to be the theme that worked best out of the box with Jekyll 3.6, and was usable on GitHub Pages.
This blog is current deployed to GitHub Pages, but GitHub Pages tend to be slow at updating their Jekyll technical stack, and they only support a limited set of plugins.
I initially used Travis CI as both a test harness and a deployment pipeline
to bypass the limitations of the Pages gem, and allow Jekyll to use the
latest gems, as well as plugins not supported by GitHub's safe
mode (see my
blog post Build a CI/CD pipeline for your Jekyll site for more information
about how I got a Travis-GitHub Pages test/deploy pipeline working).
However, I now use GitHub Actions for CI/CD. See the ci.yml
file for
details.
Category | License |
---|---|
Content | |
Code |
Content in all blog posts is licensed under the Creative Commons Attribution 4.0 license (CC-BY-4.0), and all source code in this repo, and contained within any blog posts, is licensed under the MIT license.
SPDX-License-Identifier: (MIT AND CC-BY-4.0)