Database Architecture
Pyxis CMS utilizes PostgreSQL as its primary data store. The architecture is designed to balance relational integrity with the flexibility required by a modern Headless CMS.
Key Architectural Principles
Section titled “Key Architectural Principles”1. Unified Identity (UUID)
Section titled “1. Unified Identity (UUID)”To ensure security and scalability, the system uses UUID for all primary keys. This approach prevents ID enumeration attacks and ensures that internal record sequences are never exposed via public APIs.
2. Hybrid Relational-Document Model
Section titled “2. Hybrid Relational-Document Model”The system follows a “Best of Both Worlds” strategy:
- Relational Core: Entities like
users,roles, andpagesmaintain strict foreign key relationships to ensure data consistency. - Document-based Content: Dynamic data, such as SEO metadata and page sections, are stored in JSONB columns. This allows for schema flexibility without the overhead of frequent migrations.
Entity Overview
Section titled “Entity Overview”- Identity Layer: Manages administrative users and Role-Based Access Control (RBAC).
- Content Layer: Stores page structures, routing (slugs), and authorship metadata.
- Configuration Layer: Handles global system settings through a flexible key-value store.