$ show TryGhost/Starter
This repository is the official Ghost Starter Theme, a foundation for building custom Ghost CMS themes. It provides a complete set of Handlebars templates (default.hbs, index.hbs, post.hbs, etc.), modular CSS components (buttons, forms, global reset), and JavaScript modules (mobile menu toggle, infinite scroll) that are compiled and optimized via Rollup and PostCSS. The theme is designed to be extended and includes CI/CD workflows for testing and deployment. It is not a standalone application but a theme package that runs within the Ghost CMS environment (>=5.0.0). The codebase demonstrates modern front-end tooling with ESM, CSS custom properties, and responsive image handling. While the theme itself is tightly coupled to Ghost's template engine, several components (CSS patterns, infinite scroll, menu toggle) are self-contained and could be extracted for use in other projects.
The LLM identified 3 files worth highlighting for reuse:
Implements infinite scroll pagination using the IntersectionObserver API. It fetches the next page of posts when the last post enters the viewport, parses the HTML response, and appends new posts to the feed. The script is self-contained, uses no internal imports, and can be reused in any blog or listing page that uses a similar pagination structure (link[rel='next'] and .post elements).
A minimal script that toggles a 'gh-head-open' class on the document body when a burger button is clicked. It is a clean, self-contained pattern for implementing a mobile navigation menu toggle. It can be extracted and reused in any project that needs a simple CSS-based menu open/close behavior.
A well-structured CSS component for buttons using CSS custom properties for theming. It defines base button styles, size variants (small, large), disabled state, and primary/secondary styles. The component is isolated, uses no external dependencies, and can be extracted as a reusable button system for any web project.