A responsive, well-designed template to help you get started on your next blog or website.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Purelog is a responsive, sidebar theme for the popular JAMstack generator Jekyll that only uses the minimal Pure.css framework (hence the name!), while still following the best practices possible for accessibility and search-engine optimization.
I created this after finishing Watery (which this theme is built off of), as a way to add more functionality and design while still remaining as lightweight as possible.
This project is aimed towards those looking for an interesting theme for Jekyll that has features that aren't found commonly elsewhere, specifically having separate sections dedicated towards: blogging, note-taking, and daily journal entries.
Here are a few interesting features of this Jekyll theme:
- A fully customizable and empty
_BLANK_config.yml
to make getting up-and-running easy. - A speedy, on-site search function using Simply Jekyll Search.
- Custom collections for different types of material (note-taking, journal writing, etc.)
- An auto-generating archive page that displays all entries from all collections.
- Auto-generating tags and categories pages.
- Having a
_pages
collection for easier organization. - An author bio at the end of each post. (Located in
_inclues/author.html
) - Full Rouge support for syntax highlighting. (Currently using
base16.solarized.light
) - Auto-generated RSS feed, sitemap, accessibility features, and search-engine optimization.
Jekyll requires the following:
- Ruby version 2.5.0 or higher
- RubyGems
- GCC and Make
See Requirements for guides and details.
- Install all prerequisites.
- Install the jekyll and bundler gems.
gem install jekyll bundler
- Clone this repository.
git clone https://github.com/brennanbrown/purelog.git
- Change into your new directory.
cd purelog
- Install gems from the
Gemfile
.
bundle install
- Build the site and make it available on a local server.
bundle exec jekyll serve
- Browse to http://localhost:4000
If you encounter any errors during this process, check that you have installed all the prerequisites in Requirements.
If you still have issues, see Troubleshooting.
Once you have Jekyll up-and-running, there are only a few steps needed to make this theme your own:
- Fill out the
_BLANK_config.yml
configuration file and replace the current_config.yml
- Remove the
example_posts
folder in_posts
,_notes
,_journals
and start writing your own! - Modify or remove the pages in
_pages
to however you see fit. - (Optional) Modify or remove this
README.md
with information about your own project or blog. - (Optional) Modify the CSS files in the
assets
folder to customize the site.
There are several features that I'm still planning to create and integrate, including:
- Create a Theme Gem
- Add easy and automatic buttons to "Deploy to Netlify", Heroku, etc.
- Add Travis continious integration checks
- Add additional documentation for creating custom collections and auto generated pages
- Add more example posts and articles
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. You can use this project however you see fit without needing to give attribution.
See LICENSE
for more information.
While creating this theme, I came across a lot of helpful and hard-to-find resources. If you'd like to dive deeper into Jekyll, check them out:
- Jumping Into Jekyll: https://dev.to/brennan/jumping-into-jekyll-4o9h
- Jekyll Cheatsheet: https://devhints.io/jekyll
- Course on Jekyll: https://learn-the-web.algonquindesign.ca/topics/jekyll/
- Jekyll for Designers: http://simpleprimate.com/jekyll-for-designers/index.html
- Dynamic Copyright on Jekyll: https://michaelsoolee.com/jekyll-copyright/
- Creating breadcrumbs in Jekyll: https://jekyllcodex.org/without-plugin/breadcrumbs/
- Display all items from ALL collections: https://stackoverflow.com/questions/31171041/listing-all-collections-in-jekyll
- For markdown previews: https://jaspervdj.be/lorem-markdownum/
- Case Study on webfont performance: https://www.keycdn.com/blog/web-font-performance
- An extensive
.gitignore
: https://miguelmota.com/bytes/extensive-gitignore/
Pure.css was created by the Pure CSS group.
Simple Jekyll Search was created by Christian Fei.
Various notes and ideas were taken from Simply Jekyll by Raghuveer S..