A flat-file CMS for building websites and blogs that stores content as JSON, so no database is needed.
s9y/Serendipity
A PHP-powered blog engine with an editor, media library, themes, plugins and built-in anti-spam for self-hosted blogs.
Open-source alternative to:WordPress
- Stars
- 229
- Forks
- 93
- Open issues
- 38
- Last commit
- 2 months ago
What is it?
Serendipity is a self-hosted weblog engine written in PHP. It gives writers a backend for composing entries, managing categories, uploading images and other media, and selecting from a set of themes. Users and groups can be managed, and trackbacks, pingbacks and anti-spam measures are included.
The default installation targets casual bloggers, while plugins extend it toward more complex sites. Plugins are installed from the backend plugin interface, and they can add static pages for a small CMS, tags alongside categories, or Markdown and Textile markup. The project runs on PHP 8.0 or later with MySQL/MariaDB, PostgreSQL or SQLite as the database.
Installation means uploading the files from a release archive to a web root and opening the URL to run the installer. Most shared hosts already provide the required stack.
Key features
- 01Browser-based editor for writing and publishing blog entries
- 02Media library for uploading images, videos and other files
- 03Integrated anti-spam measures and support for trackbacks and pingbacks
- 04Selectable themes and a backend plugin manager
- 05Groups and user management
- 06Supports MySQL/MariaDB, PostgreSQL and SQLite
Use cases
- Running a personal or hobby blog on a standard PHP web host
- Building a small site with static pages using the static-page plugin
- Operating a multi-author blog with user groups and categories
Quick start
- 1
Download a release archive from the releases page
- 2
Install PHP 8.0 or newer with MySQL/MariaDB, PostgreSQL or SQLite, and Apache
- 3
Upload the files to your webroot and visit your URL to start the installer
Things to know
- Requires a self-hosted PHP server with a database and Apache, so you must set up hosting yourself.
In collections
Topics
FAQ
- What is Serendipity?
- A PHP-powered blog engine with an editor, media library, themes, plugins and built-in anti-spam for self-hosted blogs. Serendipity is a self-hosted weblog engine written in PHP. It gives writers a backend for composing entries, managing categories, uploading images and other media, and selecting from a set of themes. Users and groups can be managed, and trackbacks, pingbacks and anti-spam measures are included.
- Is Serendipity free to use? What license does it have?
- Serendipity is open source under the BSD-3-Clause license. Check the license terms before using it in commercial products.
- Is Serendipity still maintained?
- Updated within 6 months. The last commit to Serendipity was on Sep 12, 2026.
- What can I use Serendipity for?
- Running a personal or hobby blog on a standard PHP web host Building a small site with static pages using the static-page plugin Operating a multi-author blog with user groups and categories
- How do I install Serendipity?
- Download a release archive from the releases page Install PHP 8.0 or newer with MySQL/MariaDB, PostgreSQL or SQLite, and Apache Upload the files to your webroot and visit your URL to start the installer
- Where can I get Serendipity?
- The source code and installation instructions are on GitHub: https://github.com/s9y/Serendipity
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted PHP CMS with a drag-and-drop page builder for building websites, blogs and ecommerce stores.
Halo is an open-source website builder for personal blogs, knowledge bases, corporate sites and online stores.
An ultra-lightweight blogging engine written in PHP, supporting tumbleblog-style posts, themes, and optional modules.
Simple Machines Forum (SMF), free open-source PHP software for running your own online community or discussion forum.
A self-hosted blogging and web publishing platform built on Ruby on Rails, formerly known as Typo.