{"id":13941657,"url":"https://github.com/styxlab/gatsby-starter-try-ghost","last_synced_at":"2025-09-30T16:31:34.416Z","repository":{"id":37122585,"uuid":"243045325","full_name":"styxlab/gatsby-starter-try-ghost","owner":"styxlab","description":"Publish flaring fast blogs with Gatsby and Ghost","archived":true,"fork":false,"pushed_at":"2022-07-20T09:25:49.000Z","size":2483,"stargazers_count":193,"open_issues_count":12,"forks_count":84,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-01-17T00:28:38.789Z","etag":null,"topics":["blogging","casper","gatsby","gatsby-plugin","gatsby-starter","gatsbyjs","ghost","ghost-theme","jamify","react","static-site","static-site-generator"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/styxlab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["styxlab"],"open_collective":"jamify-cloud"}},"created_at":"2020-02-25T16:17:03.000Z","updated_at":"2025-01-13T17:29:42.000Z","dependencies_parsed_at":"2022-09-26T21:31:43.923Z","dependency_job_id":null,"html_url":"https://github.com/styxlab/gatsby-starter-try-ghost","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/styxlab%2Fgatsby-starter-try-ghost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/styxlab%2Fgatsby-starter-try-ghost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/styxlab%2Fgatsby-starter-try-ghost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/styxlab%2Fgatsby-starter-try-ghost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/styxlab","download_url":"https://codeload.github.com/styxlab/gatsby-starter-try-ghost/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234750655,"owners_count":18880922,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blogging","casper","gatsby","gatsby-plugin","gatsby-starter","gatsbyjs","ghost","ghost-theme","jamify","react","static-site","static-site-generator"],"created_at":"2024-08-08T02:01:24.086Z","updated_at":"2025-09-30T16:31:29.085Z","avatar_url":"https://github.com/styxlab.png","language":"JavaScript","funding_links":["https://github.com/sponsors/styxlab","https://opencollective.com/jamify-cloud"],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.jamify.org\"\u003e\n    \u003cimg alt=\"Jamify\" src=\"https://avatars0.githubusercontent.com/u/73162720?s=200\u0026v=4\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003e\n  Jamify's blog starter \u003cbr/\u003e\n\u003c/h1\u003e\n\n[![Released under MIT license.](https://badgen.net/github/license/micromatch/micromatch)](https://github.com/styxlab/gatsby-starter-try-ghost/blob/master/LICENSE)\n[![gatsby-starter-try-ghost npm package version.](https://badgen.net/npm/v/gatsby-starter-try-ghost)](https://www.npmjs.org/package/gatsby-starter-try-ghost)\n\nA [Gatsby](https://www.gatsbyjs.org/) starter for creating blogs from headless [Ghost CMS](https://ghost.org/changelog/jamstack/).\n\nTurn your Ghost blog into a flaring fast static website. This Gatsby theme is a front-end replacement of the Ghost Handlebars engine featuring an enhanced Ghost Casper look and feel. All content is sourced from a headless Ghost CMS.\n\n\u0026nbsp;\n\n## ⚠️ I am no longer actively maintaining this plugin, but PRs for fixes and version updates are most welcome!\n\n\u0026nbsp;\n\n## 🔥 Alternatives\n\n\u003e Tired of `gatsby-config.js`? Check out [Blogody](https://www.blogody.com) for an integrated solution with many more benefits!\n\n\u003e Favor [Next.js](https://nextjs.org/) over Gatsby? Head over to [next-cms-ghost](https://github.com/styxlab/next-cms-ghost)!\n\n\u0026nbsp;\n\n## 🎓 Tutorials\n\nCheck out the [Tutorials](https://www.jamify.org) for practical guides on using this project.\n\n\u0026nbsp;\n\n## 🎉 Demo\n\n\u003e Play with the [Demo](https://demo.jamify.org/) to get a first impression.\n\n[![gatsby-starter-try-ghost](https://static.gotsby.org/v1/assets/images/jamify-demo.png)](https://styxlab.github.io)\n\n\u0026nbsp;\n\n## ✨ Features\n\n-   Ghost Casper look and feel\n-   Images with [lazy-loading and blur-up effect](https://using-gatsby-image.gatsbyjs.org/) 🚀 🆕\n-   Infinite Scroll ✨\n-   Featured posts pinned on top 🆕\n-   Sticky navigation headers\n-   Hover on author avatar\n-   Styled 404 page\n-   SEO optimized\n-   Fully responsive\n-   Advanced routing 🆕\n-   Composable and extensible\n-   Incremental build enabled 🚀 🆕\n\n\u0026nbsp;\n\n## 📦 Included Plugins\n\nThe following plugins have been included for convenience:\n\n| Name                                                                                                                                  | Version                                                                                                                         | Description                                             |\n| ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- |\n| [`gatsby-theme-ghost-dark-mode`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-theme-ghost-dark-mode) | [![version](https://badgen.net/npm/v/gatsby-theme-ghost-dark-mode)](https://www.npmjs.com/package/gatsby-theme-ghost-dark-mode) | Dark mode toggle 🌗                                     |\n| [`gatsby-rehype-ghost-links`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-rehype-ghost-links)       | [![version](https://badgen.net/npm/v/gatsby-rehype-ghost-links)](https://www.npmjs.com/package/gatsby-rehype-ghost-links)       | Rewrite CMS links from absolute to relative             |\n| [`gatsby-rehype-prismjs`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-rehype-prismjs)               | [![version](https://badgen.net/npm/v/gatsby-rehype-prismjs)](https://www.npmjs.com/package/gatsby-rehype-prismjs)               | Syntax highlighting with [PrismJS](http://prismjs.com/) |\n| [`gatsby-theme-ghost-members`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-theme-ghost-members) 🆕  | [![version](https://badgen.net/npm/v/gatsby-theme-ghost-members)](https://www.npmjs.com/package/gatsby-theme-ghost-members)     | Member Subscriptions                                    |\n\nIf you don't need them, you can take them out in `gatsby-config.js` and `package.json` which may save you some time during the build process.\n\n\u0026nbsp;\n\n## 🎁 More Plugins\n\nAdditional features can be integrated by installing Gatsby themes or plugins. The following plugins have been tested to work with [`gatsby-starter-try-ghost`](https://github.com/styxlab/gatsby-starter-try-ghost):\n\n| Name                                                                                                                                   | Version                                                                                                                             | Description                                                                    |\n| -------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |\n| [`gatsby-rehype-inline-images`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-rehype-inline-images) 🆕 | [![version](https://badgen.net/npm/v/gatsby-rehype-inline-images)](https://www.npmjs.com/package/gatsby-rehype-inline-images)       | Lazy-loading inline images with blur-up                                        |\n| [`gatsby-theme-ghost-contact`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-theme-ghost-contact)      | [![version](https://badgen.net/npm/v/gatsby-theme-ghost-contact)](https://www.npmjs.com/package/gatsby-theme-ghost-contact)         | Contact page                                                                   |\n| [`gatsby-theme-ghost-commento`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-theme-ghost-commento)    | [![version](https://badgen.net/npm/v/gatsby-theme-ghost-commento)](https://www.npmjs.com/package/gatsby-theme-ghost-commento)       | Commenting system with [Commento](https://commento.io/)                        |\n| [`gatsby-theme-ghost-toc`](https://github.com/styxlab/gatsby-theme-try-ghost/tree/master/packages/gatsby-theme-ghost-toc) 🆕           | [![version](https://badgen.net/npm/v/gatsby-theme-ghost-toc)](https://www.npmjs.com/package/gatsby-theme-ghost-toc)                 | Table of Contents                                                              |\n| [`gatsby-plugin-ackee-tracker`](https://github.com/burnsy/gatsby-plugin-ackee-tracker)                                                 | [![version](https://badgen.net/npm/v/gatsby-plugin-ackee-tracker)](https://www.npmjs.com/package/gatsby-plugin-ackee-tracker)       | Site tracking with [Ackee](https://github.com/electerious/Ackee)               |\n| [`gatsby-plugin-google-analytics`](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-google-analytics)             | [![version](https://badgen.net/npm/v/gatsby-plugin-google-analytics)](https://www.npmjs.com/package/gatsby-plugin-google-analytics) | Site tracking with [Google Analytics](https://developers.google.com/analytics) |\n\n\u0026nbsp;\n\n## 🏁 Getting Started\n\n1. Install this starter by running\n\n    ```bash\n    gatsby new try-ghost https://github.com/styxlab/gatsby-starter-try-ghost\n    ```\n\n2. Change directory\n\n    ```bash\n    cd try-ghost\n    ```\n\n3. Run\n\n    ```bash\n    yarn develop\n    ```\n\n    and visit your site at `http://localhost:8000`.\n\n\u0026nbsp;\n\n## 💡 Configure\n\n```js\n//siteConfig.js\nmodule.exports = {\n    // Do not include a trailing slash!\n    siteUrl: `https://your-blog.com`,\n\n    // Maximum number of post shown per page\n    // Infinite Scroll: Initial chunk of posts, subsequent posts are fetched one by one\n    postsPerPage: 3,\n\n    // This allows an alternative site title for meta data for pages.\n    siteTitleMeta: `Gatsby Starter Ghost CMS`,\n\n    // This allows an site description for meta data for pages.\n    siteDescriptionMeta: `Turn your Ghost blog into a flaring fast static site with Gatsby`,\n\n    // Used for App and Offline manifest e.g. Mobile Home Screen\n    shortTitle: `Ghost`,\n    siteIcon: `favicon.png`,\n    backgroundColor: `#e9e9e9`,\n    themeColor: `#15171A`,\n\n    // Include Gatsby images for lazy loading and image optimizations (default: true)\n    gatsbyImages: true,\n\n    // Overwrite navigation menu (default: []), label is case sensitive\n    // overwriteGhostNavigation: [{ label: `Home`, url: `/` }],\n};\n```\n\nIn the configuration shown above, the most important fields to be changed are `siteUrl`, `siteTitleMeta` and `siteDescriptionMeta`. Update at least those to fit your needs.\n\n\u0026nbsp;\n\n## 🔑 Ghost Content API keys\n\nAll content is sourced from a Ghost CMS. By default, content is fetched from the demo location at `https://cms.gotsby.org`. Surely you want to source your own content. There are two ways to make your content keys available. Choose the method according to your build scenario.\n\n### Building with cloud providers\n\nIf you build your project with a cloud provider (e.g. Gatsby, Netlify, Vercel), the best option is to provide the keys with environment variables:\n\n| Key                   | Value (example)            |\n| --------------------- | -------------------------- |\n| GHOST_API_URL         | http:\\/\\/localhost:2368    |\n| GHOST_CONTENT_API_KEY | 9fccdb0e4ea5b572e2e5b92942 |\n\nThe place where you can define them depends on the provider, but you usually find the option under the site settings. This avoids publishing keys in a public repository and is most secure.\n\n### Building locally\n\nIf you build locally or on a private network where the build directory is not accessible to the world, you can safely add a new `.ghost.json` file in your base directory with the following JSON structure:\n\n```bash\n\n    {\n        \"development\": {\n            \"apiUrl\": \"http://localhost:2368\",\n            \"contentApiKey\": \"9fccdb0e4ea5b572e2e5b92942\"\n        },\n        \"production\": {\n            \"apiUrl\": \"http://localhost:2368\",\n            \"contentApiKey\": \"9fccdb0e4ea5b572e2e5b92942\"\n        }\n    }\n```\n\nThis file is part of `.gitignore` to avoid accidentally publishing it to your public repository. Change the `apiUrl` and `contentApiKey` to match your own Ghost CMS Content API keys.\n\n\u0026nbsp;\n\n## 🤯 Ensure headless mode of Ghost CMS\n\nFor 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 `\u003cmeta name=\"robots\" content=\"noindex\" /\u003e` so your Gatsby front-end becomes the authoritative source for search engines.\n\n\u0026nbsp;\n\n## 💫 Deploy\n\n[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/styxlab/gatsby-starter-try-ghost)\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/styxlab/gatsby-starter-try-ghost)\n\n\u0026nbsp;\n\n## 🔧 Update\n\nIt is recommended to install [npm-upgrade](https://www.npmjs.com/package/npm-upgrade) with `sudo npm install npm-upgrade -g`. Change into the base directory and update all packages with:\n\n```bash\n    npm-upgrade\n```\n\nYou will be prompted to update all packages within your `package.json` file. Next, download the new packages:\n\n```bash\n    yarn\n    yarn clean\n```\n\nThe update process is now complete and you can start a new build with `yarn build` (or `yarn develop`).\n\n\u0026nbsp;\n\n## 💣 Reporting issues\n\nPlease report all bugs and issues at [gatsby-theme-try-ghost/issues](https://github.com/styxlab/gatsby-theme-try-ghost/issues) as all development is happening there.\n\n\u0026nbsp;\n\n## 🧐 Disclaimer\n\nThis project is not affiliated with [Gatsby](https://www.gatsbyjs.org/) or [Ghost](https://ghost.org/).\n\n\u0026nbsp;\n\n# Copyright \u0026 License\n\nCopyright (c) 2020 styxlab - Released under the [MIT license](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstyxlab%2Fgatsby-starter-try-ghost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstyxlab%2Fgatsby-starter-try-ghost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstyxlab%2Fgatsby-starter-try-ghost/lists"}