- Notifications
You must be signed in to change notification settings - Fork0
Full-featured Jekyll port of Ghost's default theme Casper v2 👻
License
pmak-01/blog
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a full-featured port of Ghost's default themeCasperv2.1.9 forJekyll /GitHub Pages.
- Out of the box support for multiple authors (via
_data/authors.yml
) - Full author information including: picture, bio, website, twitter, facebook, etc.
- Tag description(s) and personalised covers (via
_data/tags.yml
) - Related posts view at the bottom of each post
- All Ghost default pages: Author page(s), Tag page(s), About page(s), 404, etc.
- Pagination (infinite scrolling or standard pagination, i.e. posts across multiple pages)
- Atom Feeds byJekyll-feed
- Toggleable subscribe button (requires an external service)
- Code Syntax Highlight withhighlight.js
- Support for Google Analytics tracking
- Support for Disqus comments (not Ghost standard)
There are several alternatives to building and deploying the site:
build the site withGitHub Actions which pushesthe resulting files (the contents of
_site/
or../jasper2-pages/
)to thegh-pages branch. This is the approach that is currently used. Seejekyll_build.yml for more details.generate the site locally (more details below) and push the resultingHTML to a Github repository, that GitHub Pages then host;
build the site withtravis-ci (with goodies fromjekyll-travis) automatically pushing thegenerated HTML files to agh-pages branch.
deploy the static website with Jekyll-compatible hosters, such ashttps://www.netlify.com/, that allow for deployment from the Github repo and publish the website using CDNs. Netlify has a free starter offer.
For option2) simply clone this repository (master branch), and then runbundle exec jekyll serve
inside the directory. Upload the resulting_site/
(or../jasper2-pages/
)contents to your repository (master branch if uploading as your personal page(e.g. username.github.io) orgh-pages branch if uploading as a project page(as for thedemo).
For option3) you will need to set up travis-ci for your personal fork. Briefly all youneed then is to change your details in_config.yml so that you can pushto your github repo. You will also need to generate a secure key to add to your.travis.yml (you can find more info on how to do it in that file).Also make sure you read the documentation fromjekyll-travis. This approach has clearadvantages in that you simply push your file changes to GitHub and all the HTML filesare generated for you and pushed togh-pages. Also you get to know if everything isstill fine with your site builds. Don't hesitate to contact me if you still have anyissues (see below about issue tracking).
In order to properly generate author pages you need to rename the fieldauthor in thefront matter of every post to match that of your each author'susername as definedin the_data/authors.yml file.With the latest update, multiple author blogs are now supported out of the box.
Following on the way Casper styles are compiled asdescribed here:
Jasper2 styles are compiled using Gulp/PostCSS to polyfill future CSS spec. You'll need Node and Gulp installed globally. After that, from the theme's root directory:
$ npm install$ gulp
Now you can edit/assets/css/
files, which will be compiled to/assets/built/
automatically.
This install builds well with Ruby v2.6.3 and Jekyll v3.9.0. If you run into any problemsplease log them on theissue tracker.
Feel free pull-request your patches and fixes.
Many thanks to the Ghost team for all the design work. Also many thanks to all contributors,that help keeping the project alive and updated 😄
Same licence as the one provided by Ghost's team. See Casper's themelicense.
Copyright (C) 2015-2021 - Released under the MIT License.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE ANDNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.