content management system

From IndieWeb
(Redirected from custom PHP)


A content management system (often abbreviated as CMS) is software used to create, enter, edit, update, delete content on websites; some CMSs are used for IndieWeb sites, see the tables on this page for current usage.

Why

CMS are meant to make creating and managing content easier. In many ways, they can give you the ease-of-use that silos generally provide. In addition, a CMS usually comes with well defined structures for your content and with plugins to give you indie functionality such as webmentions. If a CMS isn't good enough to change your behaviour to post to your own site first / instead of a silo (e.g. plenty of "old school" bloggers that tweet but fail to post notes on their own site), then that CMS is not good (and you should thus write your own or improve another, whichever is easier.).

To CMS or not to CMS?

Using an existing, proven CMS can be the most effortless way of getting an indieweb site, though it nearly always requires a little bit of tinkering.

Comic about blogging and blogging tools, illustrated using a chart with vertical axis for number of blog posts, and horizontal axis for number of posts about elaborate blog setups, with various tools plotted at various points. Nearly all CMSs have a web-based editor that is easy to use for creating, updating, deleting posts, whereas SSGs typically* require you to edit text files, often in Markdown format, and deal with syncing them to your server, regenerating, and setting up / maintaining external services for features like Webmention sending/receiving, Micropub support etc. *There are also static site CMSs with the friendly user interface of a CMS combined with the freedom of not needing to "run" a CMS to serve your pages/posts.

Many members of our community use a CMS. However, many don't. Some use static pages which they edit in an editor or use a static site generator (SSG). While not as convenient as a CMS, those solutions may work just as well for you.

Use an existing CMS or write your own?

"Hmmm I want to write a blog post maybe I should build my own blogging engine" β€” @iamdevloper 2021-04-09

The question of whether to use an existing CMS or to write your own could (and should) be expanded to:

Why re-use a CMS

Why you should re-use an existing CMS, and help contribute to it:

  • There's no way around a little bit of tinkering. But using an existing, proven CMS can be the most effortless way of getting an indie website.
  • Leverage the fruits of labor (millions of hours!) other people and CMS communities have invested.
  • Benefit from domain experts in those communities. Watching for exploits and quickly shipping security patches is a key example. Small independent CMSes may generally be smaller targets, but are also less secure and hardened.
  • Spend your time and energy on other projects that are more likely to be adopted by others and benefit the community
    • It takes a large amount of duplicated effort to get even a *barely* decent CMS, and almost all of that effort is duplicated
  • It's usually a better use of effort, more collaborative and inspiring, and more community-oriented to join and improve an existing CMS like Known than build your own from scratch
  • If you're not scratching your own itches as easily or fast as you'd like or making your CMS as or more awesome/beautiful than silos, then yes, stop writing your own CMS and use an existing one.

Why write your own

Why you should write your own CMS for your personal web site, in short:

  • Scratch your own itches
  • As long as people are posting to silos *instead of* posting to their own site, we lack good CMSs, and you should help by starting with your own.
    • Make it as awesome / beautiful or more than any silo you currently use
    • Nearly all existing CMSs suck at UI/UX compared to silos.
  • A "barely decent" CMS may be exactly what more people can use - not these overdesigned behemoths that require nasty sysadmin work and have tons of regular security exploits
  • People here have built amazing things because they started with the freedom and low learning curve of their own CMS
  • More CMSs means more ways to rapidly iterate with UI - catching up in UI/UX is the #1 thing we're behind on compared to silos
  • Existing communities tend to be monoculture laden and slower to change, slower to iterate, and may not share your priorities (e.g feature parity with silos).

From Twitter:

Articles advocating your own

Examples

A list of CMS that IndieWeb community members use and which you too can use!

If you use any of these, please also add yourself to the rightmost column (bolded if you're a founder/primary developer of that CMS), and to the IndieWeb Examples section of that CMSs page.

Please also see our projects where community members show how their sites are built.

Name / Url(s) Tech Pricing Plugins / building-blocks I use this!

Craft

PHP / MySQL

Free (personal use), Paid (commercial use)

Webmention for Craft 2 (not compatible with Craft 3)

Matthias

Drupal

PHP + SQL database

Open Source (GPL)

Webmention, micropub, microformats, Microsub link exposure, IndieAuth via plugin

Kristof De Jaeger Ravisagar.in

Kirby CMS

PHP / flat files

Personal + Commercial licenses

Webmentions

Bastian

Known

PHP

Open-Source (Apache2), hosted version currently only for organisations

Webmention, Micropub natively, Plugins

πŸ‘₯ lots of people

Micro.blog

Commercial ($5/month)

Webmention, Micropub, rel-me, IndieAuth, microformats

Manton Reece, Jean MacDonald

Perch PHP / MySQL Commercial license Webmention Drew McLellan, Scott Gruber, Clive Walker
ProcessWire PHP / MySQL Free (+ commercial modules) Webmention, IndieAuth plugins gRegor Morrill

TYPO3

PHP / MySQL

Free (+ commercial/professional support plans)

Indieweb Publishing Tools (Webmention)

Joschi Kuphal

WordPress

PHP / MySQL

Open-Source (+ commercial hosting/support)

Indieweb Plugin β€’ Webmention β€’ Semantic Linkbacks β€’ Micropub β€’ IndieAuth β€’ Post Kinds β€’ Syndication Links β€’ WebSub plugins β€’ and more

πŸ‘₯ lots of people


There's more. Please help keep this register updated. Here is a list of all pages marked as CMSes in the wiki:

To add to this list, create a page for the CMS and include [[Category:CMS]]

These should be added to the table above:

Microblog.pub

Main article: microblog.pub

microblog.pub is self-hostable, single-user, IndieWeb friendly microblogging open source software based on ActivityPub which supports many IndieWeb building blocks including IndieAuth, microformats2, Micropub, and Webmention. See also documentation at https://sr.ht/~tsileo/microblog.pub/

Elgg

Main article: Elgg

Elgg is a self-hostable social networking CMS. As of 2023-01-03 it can support microformats2, Webmention, and Microsub via a plugin.


Private Examples

Some CMS are used by indieweb community members but are not (yet?) available for others to install or use. They're still good to check out for ideas:

Name / Url(s) Tech Pricing Plugins / Building blocks I use this!
Falcon PHP/CASSIS some open source, otherwise private/na IndieWeb friendly building blocks support Tantek Γ‡elik
p3k PHP some open source, otherwise private/na -- Aaron Parecki


Other Examples

Some CMS are not currently used by any indieweb community members may be available for others to install or use. Take a look and if you use one of these, move it to the first table, and add yourself in the right column!

Name / Url(s) Tech Pricing Plugins / Building blocks I use this!

AerosolCMS

nodeJS

--

--

  • Oliver (who? please link to your wiki page / home page)

Ghost

nodeJS

Personal + Commercial licenses

--

--

MODX CMS

PHP / MySQL

--

--

--

Defunct

  • CityDesk was a Windows desktop based CMS from Fog Creek software for simple websites.
  • ...

See Also