Progress is a free long-form blogging theme for Jekyll that adds a reading progress indicator to posts, configurable entirely through YAML files and designed for responsive, retina-ready display.
What is Progress?
Progress is a Jekyll theme focused on long-form blogging, created by Alexander Russell and inspired by Cody House's Reading Progress Indicator. It takes a standard Jekyll site with Markdown posts and generates a responsive blog with a scroll-based progress bar, a five-post homepage loop, and archive and about pages. The theme runs on Jekyll, is free to use and fork, and is available on GitHub.
Key Features
- Reading progress indicator — A scroll-based indicator integrated into longform post view, courtesy of Cody House.
- Responsive layout — Uses max-width for fluid responsiveness across viewport sizes.
- Retina images — Supports @2x images for sharp display on high-DPI screens.
- Post loop with pagination — Homepage lists the five most recent posts with pagination.
- Archive page — Lists all posts from newest to oldest by date.
- Easy configuration — All navigation and owner details are set in
_config.ymland thedata/navigation.ymlfile. - File structure — Includes
_includes,_layouts,css,js, andimagesdirectories with preprocessed styles and jQuery-based main.js.
Who is it for?
- Jekyll bloggers who want a clean, readable long-form layout without building a theme from scratch.
- Developers who need a minimal, customizable blog theme they can fork and tweak via YAML config.
- Writers who want a reading progress indicator to engage readers on lengthy posts.
What can you do with Progress?
- Publish long-form posts — Use the
post.htmllayout to display articles with a progress bar and space for related posts. - Create static pages — Use
page.htmlfor full-width pages like About or Contact. - Customize navigation — Edit
data/navigation.ymlto add page links, including external links withexternal: true. - Deploy to GitHub Pages — The theme is built for Jekyll and can be pushed to gh-pages, with the
urlsetting commented out locally and enabled for deployment.
How does Progress work?
After installing Jekyll, download or fork the Progress repository, then customize _config.yml with your site title, tagline, description, and owner information. Posts are added as Markdown files in _posts, and the theme's layouts and includes render them with the progress indicator on longform content.
FAQ
Is Progress free?
Yes, Progress is free to use, fork, and modify. The only restriction is that you cannot resell the design without permission from the author.
Does Progress work with GitHub Pages?
Yes, it's a Jekyll theme designed to be pushed to gh-pages. Remember to uncomment the url setting in _config.yml when deploying.
What layouts does Progress include?
Progress includes three layouts: default.html, page.html for full-width pages, and post.html for posts with the reading progress indicator and related posts space.
Can I use Progress for a non-blog website?
Progress is built specifically for blogging—it has a post loop, archive, and reading progress indicator. While you could adapt it for other uses, it's most effective for long-form article-driven sites.





