Detailed Technical Description
ποΈ Release Date
Ghost was publicly launched on October 14, 2013, with version 0.3.2, after an initial release to the contributors of its Kickstarter campaign.
π License
Ghost is open source software released under the MIT license. This license allows the software to be used, modified, and redistributed, including for commercial purposes, provided that the copyright and license notices are retained. Ghost(Pro), its managed hosting service, is paid.
π» Programming Language
Ghost is mainly developed in JavaScript and runs on Node.js. Its web server relies on Express.js and its themes use the Handlebars.js templating engine to generate the site's pages.
ποΈ Architecture
- Decoupled architecture: Ghost combines a core exposing JSON APIs, an administration application, and a theme layer for public display. These components remain separate while working together in a standard installation.
- Classic or headless operation: Ghost provides a public site with its Handlebars themes, but can also serve as an editorial backend for an independent frontend. The application code is organized around the
coredirectory, for the CMS core, and thecontentdirectory, for customizable elements such as themes and images.
π Database
Ghost distinguishes the supported databases according to the usage environment:
- MySQL 8: the only database officially supported in production.
- SQLite3: supported only for local development.
MariaDB and PostgreSQL are not among the databases officially supported for a production installation. The documentation requires MySQL 8, even though other engines may show some technical compatibility
βοΈ Main Features
β Editorial publishing: creation of publishing sites, professional blogs, and independent media, with content delivered on the web and by newsletter.
β Rich content editor: writing with content cards that embed images, galleries, videos, audio files, products, downloadable files, and external content
β Member management: reader sign-up, management of free or paid members, and content restriction according to their subscription level.
β Built-in newsletters: sending posts by email, scheduling campaigns, and creating multiple newsletters aimed at distinct audiences.
β Built-in SEO: customizable metadata, automatic XML sitemap, canonical URLs, structured data, and social sharing tags, without requiring an SEO extension
β Themes and customization: customizable Handlebars themes, the ability to develop your own theme, and use of an independent frontend in headless mode.
π₯ Advanced Features
π Paid subscriptions: native integration with Stripe to offer subscriptions and give access to content reserved for the different member tiers.
π Built-in audience analytics: tracking of traffic, newsletter performance, member growth, and conversions. Availability depends on the plan and deployment mode; Ghost 6 web statistics are notably not compatible with an installation using only Ghost-CLI.
π Social web publishing: ActivityPub integration to distribute posts and allow interactions with compatible platforms; connections with other networks also go through social web interoperability mechanisms.
π¦ Integrations and headless architecture: JSON APIs and frontend decoupling to connect Ghost to a custom application or a specific publishing pipeline.
π‘ Monetization and retention: multiple newsletters, recipient segmentation, gift links giving access to a restricted article, and tracking of member sign-up sources.
π Security
πΉ Device verification: when a team member logs in from an unknown device, Ghost asks for a code sent to their email address
πΉ Two-factor authentication: the option to require an emailed code each time admin users log in, and not only when a new device is detected.
πΉ Passwordless reader login: members access their account through a secure link or a one-time code sent by email. These accounts are separate from the editorial team's accounts.
πΉ Protection of restricted content: server-side control of access rights, based on the member's status and subscription level, rather than simply hiding content in the browser.
πΉ Traceability and reset: history of team actions and an authentication reset function to renew the site's keys and secrets in case of suspected compromise.
β Pros and Cons
β Advantages
βοΈ Integrated editorial solution: website, newsletters, members, and paid subscriptions are brought together in a single platform.
βοΈ Open source software: the MIT license allows the CMS to be modified and self-hosted, with no obligation to use Ghost(Pro).
βοΈ Native search engine optimization: the main technical SEO features are built into the core of the software, which reduces the need for dedicated extensions.
βοΈ Presentation flexibility: use of a theme to launch a complete site, or of an independent frontend for a headless project.
βοΈ Direct relationship with readers: management of members, newsletters, and subscriptions within the CMS, with tracking of engagement and audience growth.
β Disadvantages
β Editorial specialization: Ghost is primarily designed to publish and monetize content; a complex online store, a business portal, or an application with heavily structured data requires additional tools and development.
β Limited database choice: MySQL 8 is required to benefit from official production support; SQLite3 is reserved for development and MariaDB is not officially supported.
β Technical maintenance when self-hosting: the organization must manage its server environment, its updates, and compatibility changes between major versions.
β Costs and limits of the managed service: Ghost(Pro) is paid and its plans differ notably according to the number of members, the number of newsletters, and the analytics features available
π Official Website
π https://ghost.org


