Grant Proposal: Quarren CMS
Fri, 05-Jun-2020 by
Jason A. Crome
edit post
# Title
Grant Proposal: Quarren CMS
# Synopsis
Quarren is a nerdy, pragmatic, plugin-based CMS, written in Perl and Dancer2.
Quarren implements a plugin system for themes & templates, shortcodes, content-uploaders and renderers, comment systems, administrative tools, and searching. This allows for a wide variety of use-cases and possible configurations, and ensures that the system need not load tools that are not desired for a given site, keeping it lean, efficient, and easy-to-use.
Quarren is intended to be database-independent. Initial development is in PostgreSQL, with the intention of having it capable for SQLite 3.0 deployments at first release.
From single-page portfolio sites to full-on multi-user blogs with commenting, to e-commerce sites, best-of-breed CMS features are a plugin away, and a site's owner will know the joy of only seeing the tools they need to manage their site.
# Community Benefits
It seems to be a rite of passage for some developers to build a CMS. That's fine, but few of those projects are designed to "scratch the itch" beyond the developer's individual need. With Quarren, we as a community can have a useful CMS that is feature-rich and extensible as new use cases arise. My intention is for Quarren to be a product that many people can use, develop, and be proud of. I would like to see a group of users and developers arise (as has happened in the Dancer2 community) to continue support of the project.
# Deliverables
* The Quarren core, released to CPAN, with documentation on installation, usage, and further development.
* A useful set of Quarren plugins on CPAN, including themes, shortcodes, content-uploaders, RSS, page renderers, a comment system, searching, and key administrative tools.
# Project details and proposed schedule
The Quarren core is already in development, and can return raw-HTML pages manually stored in its database. The plugin system is already populated with a theme and page renderer, and more plugins are in development as part of the administrative UI. The current schedule calls for completion of the Quarren core and documentation, and a bare minimum of plugins, by mid-July, in time for an already-planned talk for Charlotte.pm. I have connections with Houston and Atlanta PM groups for potential talks during the August-October time frame, and would be delighted to present via Zoom at any other PM groups that may be interested.
Once the core system is released, I'll be using it to maintain sites that I own or manage, beginning with the single-page https://hiruthie.me, currently implemented in Jekyll, followed by https://holl-away.life, currently in Hugo, and https://perl101.org, currently in Podium, with redesigned content under development in Hugo.
My goal is to have these three sites all up and running on Quarren by the end of the year, with all the tooling needed to get them doing the things I want for them--scratching my own itches, as the initial case. That would complete the grant, once the plugins to do that are released. After that, I and the community can develop new plugins as needed for interested use cases.
# Developer biography
I've been using Perl professionally for 19 years, and have used and managed a number of different CMSes over the years, including WordPress, Joomla, Drupal, Hugo, and Jekyll. I've seen the good, the bad, and the ugly in those systems, and their communities. I currently work for Clearbuilt, based in Atlanta, remote from my home in Houston, where I serve as a Lead Developer and Project Manager.
# Requested grant amount
US $5,000
Comments (5)
Is the existing development in a public repository?
Hi, coke!
The post here doesn't mention me by name (although referencing my personal site), but I'm the one whose mad idea Quarren is.
Initial work, which is admittedly somewhat sketchy and proof-of-concept-ey, is available at https://gitlab.com/GeekRuthie/quarren-cms
At this point, the Dancer2 routes for public-facing pages are there, and can handle very-basic permalink systems--and I've made it modular for more options later. I just started in last week on the admin section, so don't expect much of anything there yet.
Also, the stub of a theme plugin is at https://gitlab.com/GeekRuthie/quarren-plugin-theme-barepages.
What differentiates Quarren from existing Perl CMS systems like Yancy? https://github.com/preaction/Yancy
Good question, sebastian. If anything, preaction's Yancy project is even geekier than Quarren! I've not ever used Yancy, but spent some time looking over the documentation this morning to help frame an answer. Doug can correct me if I'm wrong, but as I understand it, Yancy requires the user to define their data schema, in most use-cases. I'm taking an approach somewhat closer to WordPress, where the user does not have to concern themselves with that, unless they are writing a plugin. Where Yancy can focus itself on management of data, even fairly complex data--I could, for instance, envision Yancy being used as a simple ERP system--my vision for Quarren is aiming more toward blog and portfolio content, with the user not needing to know or understand their database engine to make it go. I hope this answers your question, sebastian, and thank you for participating in the public-comments process.