Awesome CMS is…an awesome list of awesome CMSes. It’s on GitHub, so anyone can add to it via a pull request. Here are some notes on how and why it came to be.
GitHub has a set of powerful commands for narrowing search results. In seeking out modern content management tools, I used queries like this:
Sorting by stars, I worked my way backwards. I was able to quickly spot relevant CMS projects. I also started to notice some trends.
- Headless content management systems are gaining popularity. Simply presenting the UI for users to edit content, and relying on the end user to create the user-facing site by ingesting the API. Directus and Cloud CMS are headless CMS options.
- Static content management systems don’t host pages for you. Instead they help generate your CMS, using static files. Netlify CMS, Respond CMS, and Lektor are a few of the options in the static CMS space.
I knew the list of all popular content management systems would be huge. I didn’t want to put that data into Markdown directly, as it would be difficult to maintain and to augment with extra data (stars on GitHub, last push date, tags, etc).
Instead, I opted to store the data in TOML, a human-friendly configuration file language. You can view all of the data that powers Awesome CMS in the data folder. Here’s WordPress’ entry in that file:
[[cms]] name = "WordPress" description = "WordPress is a free and open-source content management system (CMS) based on PHP and MySQL." url = "https://wordpress.org" github_repo = "WordPress/WordPress" awesome_repo = "miziomon/awesome-wordpress" language = "php"