The Beginnings of JayDMS

Why I created it...

The idea of creating a CMS started with the motivation of rapid website development many years ago. The typical CMS involved learning a new system, and its proprietary theming convention that could not be used elsewhere. This lead me to test the waters with (my previous projects) SumCMS and BKDR.

SumCMS started as a drop-n-go for current static sites, but was heavily inspired by WordPress. BKDR was an extreme take on the other direction, which was pure coding within the browser. None satisfied my vision of what a CMS should be, because I wasn't sure what was really needed.

Over the years, the idea always stuck with me but never really gave it further thought until late 2018. A conversation about searching for a CMS that would meet certain needs over the commonly used WordPress, lead me to think about several different perspectives on the CMS today, and what was needed at the moment.

Themes, plugins, extensions, packages, skins; all ring a similar tone in the CMS world. Choosing a CMS meant committing to a specific platform, and to specific development style. I wanted a CMS that was not restricted, instead it should be universal. So I asked myself, could it be possible to make websites like Lego? Lego provided a unique idea. Each Lego brick can be used in countless ways to create whatever you desire. Why aren't we designing website in this manner? We build things, then build them again in a slightly different manner to support another project.

In late 2018, I decided to tackle this idea. The idea was simple now, how can I make websites into Lego? My experience with React helped me determined that following a similar component concept would prove the best direction to follow. Along with this, I needed to choose what information would be kept, and a universal way to communicate this information. I ended up settling on the basics: HTML, CSS, and JavaScript. Also, using a JSON format as the core data structure can be read by many programming languages.

At this point, the goals became clear and simple for this CMS:

  • It does not use themes.
  • It does not use plugins.
  • It should be modular and interchangeable.
  • Have a short learning curve.
  • Is expandable through the component system.

Another important factor was mass adoption. Reason being, just as an app store's success depends on having apps, the same applied for JayDMS to have components. So platform environment matters greatly on deciding backend languages. Shared hosting accounts were always in mind during development. So a flat-file system helps with avoiding complexity, and using PHP as the backend, made it an obvious choice.

My vision for JayDMS was to create a new perspective on web development. There are countless, great CMS’ available today, and I didn’t want to just add another one. My goal was to impact the dev community in a positive light with an innovative idea. The hope is that developers use and contribute to this project.

Creator and Lead Developer
Shannon Reca
RM Digital Services