npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

gatsby-theme-try-ghost

v2.0.2

Published

A Gatsby theme for building flaring fast blogs from headless Ghost CMS.

Downloads

57

Readme

gatsby-theme-try-ghost

Released under MIT license. gatsby-theme-try-ghost npm package version. PRs welcome!

A Gatsby theme plugin for creating blogs from headless Ghost CMS.

Turn your Ghost blog into a flaring fast static website. This Gatsby theme is a frontend replacement of the Ghost handlebars engine featuring the standard Ghost Casper skin and functionality. All content is sourced from a headless Ghost CMS.

Variants 🔥

Favor Next.js over Gatsby? Head over to next-cms-ghost!

Tutorials ✨ 🆕

Check out the Tutorials for practical guides on using this project.

Demo

Play with the Demo to get a first impression.

Features

  • Ghost Casper look and feel
  • Feature & inline images with lazy-loading and blur-up effect 🚀🚀 🆕
  • Infinite Scroll ✨
  • Featured posts pinned on top 🆕
  • Sticky navigation headers
  • Hover on author avatar
  • Styled 404 page
  • SEO optimized
  • Fully responsive
  • Advanced routing 🆕
  • Composable and extensible
  • Incremental build enabled 🚀 🆕

Performance

Lighthouse Score

Plugins

Additional features can be integrated by installing Gatsby themes or plugins. The following plugins have been tested to work with gatsby-theme-try-ghost:

| Name | Version | Description | | -------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | | gatsby-theme-ghost-dark-mode | version | Dark mode toggle 🌗 | | gatsby-rehype-ghost-links | version | Rewrite CMS links from absolute to relative | | gatsby-rehype-inline-images 🆕 | version | Lazy-loading inline images with blur-up | | gatsby-rehype-prismjs | version | Syntax highlighting with PrismJS | | gatsby-theme-ghost-contact | version | Contact page | | gatsby-theme-ghost-commento | version | Commenting system with Commento | | gatsby-theme-ghost-toc 🆕 | version | Table of Contents | | gatsby-theme-ghost-members 🆕 | version | Member Subscriptions | | gatsby-plugin-ackee-tracker | version | Site tracking with Ackee | | gatsby-plugin-google-analytics | version | Site tracking with Google Analytics |

Installation

Head over to the starter repo to get up and running quickly!

If you want to add this blog theme to an existing site, follow these instructions:

  1. Install the blog theme

    yarn add gatsby-theme-try-ghost
    # or
    npm install gatsby-theme-try-ghost --save
  2. Add the following configuration to your gatsby-config.js file

    // gatsby-config.js
    module.exports = {
        plugins: [
            {
                resolve: `gatsby-theme-try-ghost`,
                options: {
                    siteConfig: {
                        siteUrl: `https://your-bog.com`,
                        postsPerPage: 3,
                        siteTitleMeta: `Gatsby frontend powered by headless Ghost CMS`,
                        siteDescriptionMeta: `Turn your Ghost blog into a flaring fast static site with Gatsby`,
                        shortTitle: `Ghost`,
                        siteIcon: `favicon.png`,
                        backgroundColor: `#e9e9e9`,
                        themeColor: `#15171A`,
                        gatsbyImages: true,
                        // Overwrite navigation menu (default: []), label is case sensitive
                        // overwriteGhostNavigation: [{ label: `Home`, url: `/` }],
                    },
                    ghostConfig: {
                        development: {
                            apiUrl: "https://your-ghost-cms.com",
                            contentApiKey: "9fcfdb1e5ea5b472e2e5b92942",
                        },
                        production: {
                            apiUrl: "https://your-ghost-cms.com",
                            contentApiKey: "9fcfdb1e5ea5b472e2e5b92942",
                        },
                    },
                    //routes: {
                    //    // Root url for Ghost posts and pages (optional, defaults to `/`)
                    //    basePath: `/blog`,
                    //
                    //    // Collections (optional , default: [])
                    //    collections: [{
                    //        path: `speeches`,
                    //        selector: node => node.primary_tag && node.primary_tag.slug === `speeches`,
                    //    }],
                    //},
                },
            },
        ],
    };
  3. Update siteConfig

    In the configuration shown above, the most important fields to be changed are siteUrl, siteTitleMeta and siteDescriptionMeta. Update at least those to fit your needs. Also make sure your favicon.png can be found in folder static of your working directory.

  4. Ghost Content API Keys

    Change the apiUrl value to the URL of your Ghost CMS site. Next, update the contentApiKey value to a key associated with the Ghost CMS site. A key can be provided by creating an integration within Ghost Admin. Navigate to Integrations and click Add new integration. Give the integration a name and click create.

  5. Advanced Routing

    You can define a basePath that is added to all routes, effectively moving all routes one level down. Collections are distinct groups of posts that get an entry point at collections.path. Permalinks are best configured inroutes.yaml of the Ghost CMS.

Running

Start the development server. You now have a Gatsby site pulling content from headless Ghost.

gatsby develop

Ensure headless mode of Ghost CMS

For best SEO results it is strongly recommended to disable the default Ghost Handlebars theme front-end by selecting the Make this site private flag within your Ghost admin settings. This enables password protection in front of the Ghost install and sets <meta name="robots" content="noindex" /> so your Gatsby front-end becomes the source of truth for SEO.

Contributions

Special thanks go to the following contributors: jem, tobimori and Torqu3Wr3nch.

PRs are welcome! Consider contributing to this project if you are missing feature that is also useful for others. Explore this guide, to get some more ideas.

Credits

This project would not be possible without the great Gatsby, Ghost, React, GraphQL, Node and the JavaScript eco-system in general. This project started from a fork of gatsby-starter-ghost, but has evolved to a different, independent project.

Copyright & License

Copyright (c) 2020 styxlab - Released under the MIT license.