Until Aug 2023, this was the theme for my personal web site. It uses the awesome design of http://html5up.net/spectral by the talented @ajlkn.
I morphed that design into this Jekyll theme for blog and portfolio entries. Jekyll is a static site generator, which uses templates to generate all the publishable content as static HTML files (as opposed to something like WordPress, which has files that pull data from a database at runtime). This repo is the exact same code I use for my site (excluding my posts and some data files created from templates where noted).
You can clone or fork this repo as a theme for your own blog. Because it doesn't use any plugins, you can easily host it on GitHub Pages. Even so, I recommend cloning your fork locally to create and preview your posts, regardless of where you choose to publish.
With it downloaded and with Ruby, RubyGems, and Jekyll 3.1.2 or higher installed, you can use the post-creation script, preview how your site looks and functions, and properly view the theme's User Guide.
-
Personalize the information in the YAML files.
File Action _config.yml
Replace the values for each key with your info. _data/tokens.yml
Create this file, using _data/tokens-template.yml
as an example._data/authors.yml
Add author info for yourself as the first entry in the file. -
Personalize the images with your own, and change the attribution for your new banner at the bottom of
_data/credits.yml
.Image Description banner.jpg
The main large image on the front page pic01.jpg
The topics image pic02.jpg
The works image -
From the repo's root directory, start Jekyll to preview as you write.
bundle exec jekyll serve --future --drafts
-
Open a browser to http://localhost:4000 (or the port number that jekyll indicates to open).
-
Compose your first post!
ruby compose.rb
The User Guide describes some features that might be useful: http://localhost:4000/topics/user-guide/
-
Test and publish your site:
If you're building your site on Windows (like me) you can use the
site.bat
file; otherwise, just use the Jekyll commands as indicated in the site command reference below.If you use WinSCP to sync with your remote site, you can use the publish option. To publish with WinSCP, set up a
_site.env
file as described in the comments ofsite.bat
, being particularly careful to list your site remote path and excludes correctly because the script uses thesyncronize -delete
option to mirror the entire remote folder to the local one. Otherwise, see the various publishing options in Jekyll's documentation.site {dev|devnof|preview|prod|publish} dev Runs Jekyll in development watch mode: jekyll serve --future --drafts devnof Runs Jekyll in development watch mode without future posts: jekyll serve --drafts preview Runs Jekyll in production watch mode: jekyll serve prod Builds production content without watch mode: jekyll build publish Uses WinSCP's synchronize feature to mirror to a remote site.
This is a theme in the old sense of the word. This is not a newer gem-based theme (yet).
MIT