A clean minimalist theme for Jekyll using TailwindCSS that includes:
- A Jekyll blog theme
- A Gulpfile that does the following:
- Compiles Jekyll
- Runs Browsersync for local development
- Compiles TailwindCSS
Add this line to your Jekyll site's Gemfile:
gem "blogtheme"Add this line to your Jekyll site's _config.yml:
theme: blogthemeThen install dependencies:
bundle installAll theme settings are configured in _config.yml. Key options:
title: Your Site Title
description: Your site description
author: Your Name
# Google Analytics 4
# ga_tracking_id: G-XXXXXXXXXX
# Social links — uncomment and add your username
# twitter_url: https://twitter.com/username
# github_url: https://github.com/username
# linkedin_url: https://www.linkedin.com/in/username
# medium_url: https://medium.com/username
# instagram_url: https://www.instagram.com/username
# dribbble_url: https://dribbble.com/username
# codepen_url: https://codepen.io/username
# angellist_url: https://angel.co/username
# Homepage section content
recent_posts_title: Recent Posts
recent_posts_content: A short description for your recent posts section.
featured_title: Featured Works
featured_content: A short description for your featured works section.
services_title: Services
services_content: A short description for your services section.
footer_content: "© 2025 Your Name"Customize homepage content by editing the files in _data/:
| File | Purpose |
|---|---|
_data/featured.yml |
Featured projects shown on the homepage |
_data/services.yml |
Services section on the homepage |
_data/testimonials.yml |
Testimonial shown on the homepage |
| Directory | Purpose |
|---|---|
_layouts/ |
Page layout templates |
_includes/ |
Reusable components |
_styles/ |
CSS source files (TailwindCSS) |
_pages/ |
Built-in pages (posts, tags, categories, 404) |
_data/ |
Homepage content (featured, services, testimonials) |
assets/ |
Static assets (images, compiled CSS) |
- Docker
- Docker Compose
- Node.js (for running npm commands)
The theme uses Docker for development to ensure a consistent environment across different machines.
npm install
npm run docker:rebuildStart the dev server with live reload at http://localhost:4000:
npm startStop the container:
npm run docker:stopNote: Run
npm run docker:rebuildagain any time you change theDockerfile,Gemfile, orpackage.json.
-
Build for development:
npm run build:dev
-
Build for production:
npm run build
This will create an optimized production build with minified assets.
- Update the version number in both
package.jsonandblogtheme.gemspec - Build the gem:
gem build blogtheme.gemspec
- Push the gem to RubyGems:
gem push blogtheme-x.x.x.gem
- Commit, tag, and push:
git add package.json blogtheme.gemspec git commit -m "Release version x.x.x" git tag vx.x.x git push origin main --tags
Bug reports and pull requests are welcome on GitHub at https://github.com/nathanjessen/blogtheme.