Gatsby Casper Starter is a blog boilerplate for Gatsby v2 that ports the Ghost Casper v1.4 theme into modular React components, letting you publish a static Markdown-based blog with built-in SEO, pagination, and analytics.
What is Gatsby Casper Starter?
Gatsby Casper Starter is a blog starter for Gatsby v2 that reimplements the popular Casper v1.4 theme originally authored by Ghost.io. It takes Markdown posts with optional YAML frontmatter from a configurable content directory and outputs a fully static site with pre-rendered HTML, automatic JS chunk loading, offline support, and a Web App Manifest. The project is maintained by haysclark, with the v2 upgrade largely contributed by hnspn and GatsbyCentral, and it is based on Vagr9K's Gatsby Advanced Starter. The original single Casper CSS file was carefully extracted into individual styled components.
Key Features
- Modular components — The Casper theme's monolithic CSS was broken into separate React components for each part of the layout, so you can customize styling per element.
- Markdown content — Posts live in a configured subfolder of /content/, support code syntax highlighting, and allow embedding YouTube videos and Tweets directly in Markdown.
- Pagination — Tag, category, and post list pages all support pagination with a limit you set via sitePaginationLimit (default 10).
- SEO tooling — Generates a sitemap.xml, robots.txt, Schema.org JSON-LD for rich snippets, OpenGraph tags, and Twitter Card tags.
- Author profiles — Each post references an author by ID, with author data stored in JSON files; the default author is used when a post has no author.
- Analytics and comments — Google Analytics tracking ID is configurable in SiteConfig, and Disqus comments are supported after uncommenting the relevant code.
- Social sharing — Uncomment code to enable Twitter tweet buttons, Facebook share counts, and Google+ share buttons.
- Developer experience — Includes ESLint, Prettier, Remark-Lint, write-good, gh-pages deployment scripts, and a CodeClimate config.
Who is it for?
- Bloggers who want a fast, static blog with a clean Ghost-like design and want to author content in Markdown.
- Gatsby developers who want a highly configurable starter to build custom blogs or portfolios, with separate components they can restyle.
- Teams publishing documentation or news that need SEO, RSS feeds, and paginated tag archives out of the box.
Use cases
- Personal bloggers: publish Markdown posts with author bios, social links, and Disqus comments without managing a server.
- Indie hackers: launch a content site with Google Analytics, sitemap, and OpenGraph sharing pre-configured, then deploy to GitHub Pages via npm scripts.
- Open-source project maintainers: use the tag and category pages to organize release notes or changelog entries.
How does it work?
After installing with gatsby new YourProjectName https://github.com/haysclark/gatsby-starter-casper, you run gatsby develop to preview locally. All site configuration lives in the export object in data/SiteConfig.js, where you set your site title, URL, social links, pagination limit, theme colors, and Google Analytics ID. Posts are written as Markdown files inside the configured blogPostDir (default sample-posts), and authors are defined as JSON files in the authors folder; the default author ID is set with blogAuthorId.
Pricing
Gatsby Casper Starter is free and open source under the MIT license.
Alternatives
- Gatsby Advanced Starter — the project this is based on, with a different default theme.
- Gatsby Material Starter — a more opinionated Gatsby starter using Material Design.
FAQ
How do I install Gatsby Casper Starter?
Run gatsby new YourProjectName https://github.com/haysclark/gatsby-starter-casper from the CLI, then gatsby develop. Alternatively, clone the GitHub repo, remove the .git folder, run npm install, and start developing.
What content format does it support?
Posts are authored in Markdown with optional YAML frontmatter. Each post lives in its own folder inside the configured blogPostDir, and media files can be placed alongside the Markdown file. Authors are stored as JSON files in an authors folder.
Is Disqus built in?
Yes, Disqus support is included but disabled by default. You need to uncomment the Disqus code in the template and supply your Disqus shortname; the README also mentions notifications for new comments.
Does it work with GitHub Pages?
Yes. The project includes npm scripts for GitHub Pages deployment, and the configuration supports a pathPrefix for projects hosted under a subdirectory like example.github.io/project-name.
Is it free?
Yes, the starter is released under the MIT license, so it's free to use, modify, and redistribute.








