This website is built with Jekyll and hosted on Github Pages. Install it with bundler
A few rules to keep things consistent:
-
All titles should be in Title Case. If you are not sure, use this website selecting 'Chicago Manual of Style'.
-
Always use an ampersand (
&
) instead of 'and' in titles -
Unless a list item contains a full sentence, do not add a full stop at the end, i.e.:
# OK
- Posting data directly to the view. This allows us to check for errors using `assertFormsetError`.
# Bad
- My list item.
New projects should be added to the _projects
folder, named as <slug>.md
. Available front matter:
---
layout: project
colors:
default: <hex code for banner - do not include a hash symbol>
dark: <hex code for nav - do not include a hash symbol>
light: <hex code for borders - do not include a hash symbol>
title: <page title>
skills: [<skill 1>, <skill 2>] # e.g. HTML, UI, Django, etc.
summary: <descriptive text used for project introduction and meta description>
feature_image:
small: /assets/<image name>.png # For screens smaller than 400px
medium: /assets/<image name>.png # For screens smaller than 700px
large: /assets/<image name>.png # For screens larger than 700px
site_url: <absolute path to live site url>
github_url: <absolute path to source code url>
priority: <Integer between 1 and 5> # 1 == important. Determines ordering of projects on Homepage
sections: # Each section is separated by horizontal padding and borders - use these instead of content
- |
## <title of a section>
<markdown of a section>
- |
## <title of the next section>
<markdown of the next section>
---
New posts should be added in the _posts
folder, named as <publish year>-<publish month>-<publish date>-<slug>.md
Available front matter:
---
layout: post
colors:
default: <hex code for banner - do not include a hash symbol>
dark: <hex code for nav - do not include a hash symbol>
light: <hex code for borders - do not include a hash symbol>
title: <post title>
summary: <descriptive text used for post introduction and meta description>
comments: <status> # Set to 'on' to enable disqus comments. Otherwise omit.
---
<markdown content here>
A table of content can be generated using kramdown's built in functionality. A 'feeder' list must be provided for kramdown to replace with the real TOC. You can exclude titles from the TOC with {:.no_toc}
Example:
## Contents
{:.no_toc}
* -
{:toc}
index.html
can be edited directly. Available front matter:
---
layout: default
title: <post title>
summary: <descriptive text used meta description>
learning: <description of what I'm currently learning> # e.g. Behavior Driven Development with <a href="http://pythonhosted.org/behave/">behave</a>
---
To add a note, use:
<div class="note-header">
<i class="fa fa-exclamation-circle"></i>
Note
</div>
<div class="note">
<p>Note content goes here.</p>
</div>
To add an image figure:
<figure class="img-figure">
<img here/>
<figcaption>Caption here.</figcaption>
</figure>
To add a code heading (i.e.- the filename), add the following above the code block:
<p class="code-heading">FileName</p>
New (randomly selected) images can be added to the banner by:
- Adding the image to
/assets/banner-images
in svg format - Adding the image name to the
images
array injs/main.js
- Adding image specific styling in
_sass/_banner_images.scss
$ bundle exec jekyll serve
$ bundle exec jekyll serve --drafts # Serve articles in drafts folder
$ bundle update