I created CatalystCMS - any interest from the community?

Greetings to everyone on the forum, I’m curious about a personal project I’ve been working on for a while and I’d like to know if this type of project can contribute any value to the community.

The idea behind the CMS is to bring the flexibility of Drupal’s Field API to the Elixir ecosystem.

  • Why CatalystCMS?

For those of us who come from ecosystems like PHP (WordPress/Drupal), we know that the flexibility of custom fields often comes with a performance penalty. In the Elixir ecosystem, we have the power, but we often lack that layer of abstraction that allows end users to manage content without touching code. Catalyst bridges that gap.

Or at least he tries.

Core Features
:globe_showing_europe_africa: Native Multilingual Support: First-class i18n support with entity translation and fallback systems. It’s not a patch; it’s in the system’s DNA.

:bar_chart: Field API & Dynamic Content: Define content types and custom fields in the Drupal style, but leveraging the efficiency of JSONB in ​​PostgreSQL.

:electric_plug: Hot-loadable Plugin System: Ability to install and uninstall features on the fly without restarting the node.

:shield: Granular ACL: Policy-based access control with entity-level permissions.

:artist_palette: Dynamic Themes: Change the look and feel of your site on the fly using LiveView components.

:hook: Hook System (+30 available): An extensible architecture that allows developers to intervene at any point in the lifecycle (via before_save, after_translate, etc.).

  • :rocket: Technology Stack

Language: Elixir 1.15+

Framework: Phoenix 1.7 (with LiveView for a responsive UI without heavy JS)

Database: PostgreSQL 14+ (using Ecto for complete data integrity)

Styles: Tailwind CSS with Xintra components.

  • :building_construction: Architecture at a Glance

The project follows a layered architecture designed for scalability:

Presentation Layer: Phoenix LiveView for real-time interactivity.

Extensibility Layer: Theme and Plugin Systems (Hot Loading).

Business Logic: Content, ACL, Media, and i18n.

Data Layer: Ecto Contexts and PostgreSQL.

  • Project Status

We are currently in Phase 1 (Core System) with 73% completion. We have nearly 300 tests passed and a coverage target exceeding 90%.

8 Likes