Ghost is a free, open source blogging & personal sites project written in TypeScript and released under MIT. It has 55,339 GitHub stars, 11,975 forks and 182 open issues, and was last pushed 5 hours ago. On this registry it ranks #4 of 25 tracked projects in Blogging & Personal Sites, with 5 head-to-head comparisons available. It gained 48 stars over the last 6 tracked days.

Ghost — Publishing platform for blogs, newsletters, and paid memberships

What is Ghost?

What it is

Ghost is an open-source publishing platform built in Node.js and TypeScript, designed for blogs, newsletters, and membership-based content sites. It runs as a self-hosted web application and also powers Ghost(Pro), a managed service where all revenue supports the Ghost Foundation. The project lives in the JavaScript/Node.js ecosystem and is licensed under MIT.

Ghost solves the problem of fragmented publishing tools by unifying content creation, member management, and monetization into a single platform. It replaces the need to combine separate tools for CMS, email newsletters, subscription billing, and member dashboards—offering a cohesive workflow for journalists, independent publishers, and content creators who want editorial control and sustainable revenue models.

Key capabilities

  • Full member management with tiered subscriptions (free, paid, trial) and integrated Stripe billing
  • Built-in email newsletter system with SMTP integration and.unsubscribe handling
  • Headless Content API for custom front-ends and decoupled publishing workflows
  • Automatic SSL via Let’s Encrypt for production deployments
  • CLI tool (ghost-cli) for one-command local and server installs with automatic updates
  • Theme engine supporting custom Handlebars templates and responsive layouts
  • Admin dashboard with real-time analytics, content scheduling, and A/B testing for emails

Who uses it and how

  • Independent publishers deploy Ghost to run membership sites with paywalled content and email newsletters, using Stripe for payments and built-in analytics to track engagement
  • Newsrooms self-host Ghost to maintain full control over reader data and avoid platform lock-in while publishing daily content
  • Developers use the Ghost Admin API and Content API to build custom front-ends or integrate with existing Jamstack stacks

Getting started

Install globally via npm install ghost-cli -g, then run ghost install local for development or ghost install for production (with automatic SSL). Ghost(Pro) offers a hosted option with one-click setup.

When to use it — and when not to

Ghost is ideal for publishers needing integrated member subscriptions and email without third-party glue tools, especially those valuing open-source control and sustainability. It is not suited for high-traffic enterprise sites requiring complex multi-site management or legacy CMS integrations. Self-hosting requires managing Node.js, a database (SQLite for local, MySQL/PostgreSQL for production), and SMTP for email—though the CLI automates much of this. Compared to Ghost(Pro), self-hosting shifts operational burden (backups, scaling, security patches) to the operator.

project readme (upstream, from github) — read inline

 

Ghost Ghost

 

Ghost.orgForumDocsContributingTwitter

Downloads Latest release Build status Contributors DPG Badge

 

[!NOTE] Love open source? We're hiring! Ghost is looking staff engineers to join the team and work with us full-time

Fiercely independent, professional publishing. Ghost is the most popular open source, headless Node.js CMS which already works with all the tools you know and love.

 

Ghost(Pro) Ghost(Pro)

The easiest way to get a production instance deployed is with our official Ghost(Pro) managed service. It takes about 2 minutes to launch a new site with worldwide CDN, backups, security and maintenance all done for you.

For most people this ends up being the best value option because of how much time it saves — and 100% of revenue goes to the Ghost Foundation; funding the maintenance and further development of the project itself. So you’ll be supporting open source software and getting a great service!

 

Quickstart install

If you want to run your own instance of Ghost, in most cases the best way is to use our CLI tool

npm install ghost-cli -g

 

Then, if installing locally add the local flag to get up and running in under a minute - Local install docs

ghost install local

 

or on a server run the full install, including automatic SSL setup using LetsEncrypt - Production install docs

ghost install

 

Check out our official documentation for more information about our recommended hosting stack & properly upgrading Ghost, plus everything you need to develop your own Ghost themes or work with our API.

Contributors & advanced developers

To contribute to Ghost, start with the contributing guide. To work on the monorepo, see the codebase documentation.

 

Ghost sponsors

A big thanks to our sponsors and partners who make Ghost possible. If you're interested in sponsoring Ghost and supporting the project, please check out our profile on GitHub sponsors :heart:

DigitalOceanFastlyTinybirdBairesDev

 

Getting help

Everyone can get help and support from a large community of developers over on the Ghost forum. Ghost(Pro) customers have access to 24/7 email support.

To stay up to date with all the latest news and product updates, make sure you subscribe to our changelog newsletter — or follow us on Twitter, if you prefer your updates bite-sized and facetious. :saxophone::turtle:

 

License & trademark

Copyright (c) 2013-2026 Ghost Foundation - Released under the MIT license. Ghost and the Ghost Logo are trademarks of Ghost Foundation Ltd. Please see our trademark policy for info on acceptable usage.

Frequently asked questions

Is Ghost free to use?

Ghost is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Ghost do?

Publishing platform for blogs, newsletters, and paid memberships

What is Ghost written in?

Ghost is primarily written in TypeScript. Its source is publicly available at https://github.com/tryghost/ghost, and it has 55,339 GitHub stars.