Skip to content

atiqisrak/mave-2-cms

Repository files navigation

🚀 Mave CMS v2.0 - The Future of Headless Content Management

Mave CMS v2.0 Dashboard

👨‍💻 Created by Atiq Israk

Portfolio LinkedIn GitHub Email


Mave CMS TypeScript NestJS GraphQL PostgreSQL Redis Docker

The most powerful, scalable, and developer-friendly headless CMS platform built for the modern web.

Deploy Documentation Discord Contributing

📊 Project Statistics

GitHub stars GitHub forks GitHub issues GitHub pull requests

🏆 Achievements

License Version Build Status Test Coverage


🌟 Why Mave CMS v2.0 Will Dominate the Market

🎯 Built for Scale from Day One

  • Enterprise-Grade Architecture: Microservices, API-first, Cloud-native design
  • Infinite Scalability: Handle millions of content pieces and API requests
  • Multi-Tenant: Complete organization isolation with custom domains
  • Global CDN: Lightning-fast content delivery worldwide

Developer Experience That's Unmatched

  • GraphQL + REST: Choose your preferred API style
  • Type-Safe: Full TypeScript support with auto-generated types
  • Real-time: WebSocket subscriptions for live updates
  • Webhook System: Event-driven integrations with retry logic

🔐 Security That Enterprises Trust

  • Advanced RBAC/ABAC: Role & Attribute-Based Access Control
  • 2FA/MFA: Multi-factor authentication with backup codes
  • Audit Logging: Complete activity tracking and compliance
  • Rate Limiting: DDoS protection and API throttling

🚀 Core Features That Set Us Apart

📝 Revolutionary Content Management

// Create any content structure dynamically
const blogPost = await mave.content.create({
  contentType: "blog-post",
  data: {
    title: "The Future of Web Development",
    content: richTextContent,
    author: { connect: { id: "user-123" } },
    tags: ["web-dev", "future"],
    publishDate: new Date(),
    seo: {
      metaTitle: "Future Web Dev",
      metaDescription: "Exploring tomorrow's web...",
    },
  },
});
  • Dynamic Content Types: Create any content structure without code changes
  • Rich Text Editor: Powerful WYSIWYG with custom blocks
  • Version Control: Track every change with diff comparison
  • Content Scheduling: Publish content at specific times
  • Multi-language: Built-in i18n with fallback support
  • SEO Optimization: Automatic meta tags and structured data

🎨 Next-Gen Digital Asset Management

// Upload and automatically optimize images
const asset = await mave.media.upload({
  file: imageFile,
  transformations: {
    autoOptimize: true,
    formats: ["webp", "avif"],
    responsive: true,
    thumbnail: { width: 300, height: 200 },
  },
});

// Get optimized image URLs
const imageUrl = mave.media.getUrl(asset.id, {
  width: 800,
  height: 600,
  format: "webp",
  quality: 85,
});
  • Auto-Optimization: WebP/AVIF conversion, compression, resizing
  • CDN Integration: Global content delivery with edge caching
  • Signed URLs: Secure access to private assets
  • AI-Powered: Auto-tagging and alt text generation
  • Video Support: Thumbnail generation and streaming

📋 Intelligent Form Builder

// Create dynamic forms with conditional logic
const form = await mave.forms.create({
  name: "Contact Form",
  fields: [
    {
      type: "text",
      name: "name",
      label: "Full Name",
      required: true,
    },
    {
      type: "email",
      name: "email",
      label: "Email Address",
      validation: { pattern: "^[\\w\\.-]+@[\\w\\.-]+\\.[a-zA-Z]{2,}$" },
    },
    {
      type: "conditional",
      name: "company",
      label: "Company Name",
      showWhen: { field: "isBusiness", value: true },
    },
  ],
  notifications: {
    email: "admin@company.com",
    webhook: "https://api.company.com/webhook",
  },
});
  • Drag-and-Drop Builder: Visual form creation
  • Conditional Logic: Smart forms that adapt to user input
  • Email Notifications: Auto-responses and admin alerts
  • Webhook Integration: Connect to any third-party service
  • Analytics: Track form performance and conversions

🔔 Event-Driven Architecture

// Set up webhooks for any event
await mave.webhooks.create({
  name: "Content Published",
  events: ["content.published", "content.updated"],
  url: "https://api.frontend.com/webhook",
  headers: { Authorization: "Bearer token" },
  retryPolicy: {
    maxRetries: 3,
    backoffStrategy: "exponential",
  },
});

// Real-time subscriptions
const subscription = mave.subscribe("content.updated", (data) => {
  console.log("Content updated:", data);
});
  • Webhook System: Event-driven integrations with retry logic
  • Real-time Updates: WebSocket subscriptions
  • Event Replay: Never miss an event
  • Rate Limiting: Protect your endpoints

🏗️ Architecture That Scales

graph TB
    subgraph "Client Applications"
        A[Web Apps]
        B[Mobile Apps]
        C[IoT Devices]
        D[Third-party Integrations]
    end

    subgraph "API Gateway"
        E[Nginx Load Balancer]
        F[SSL Termination]
        G[Rate Limiting]
    end

    subgraph "Mave CMS Core"
        H[GraphQL API]
        I[REST API]
        J[WebSocket Server]
        K[Webhook Engine]
    end

    subgraph "Microservices"
        L[Auth Service]
        M[Content Service]
        N[Media Service]
        O[Form Service]
        P[Analytics Service]
    end

    subgraph "Data Layer"
        Q[PostgreSQL Cluster]
        R[Redis Cache]
        S[S3/CDN Storage]
        T[Elasticsearch]
    end

    A --> E
    B --> E
    C --> E
    D --> E

    E --> H
    E --> I
    E --> J

    H --> L
    H --> M
    H --> N
    H --> O

    I --> L
    I --> M
    I --> N
    I --> O

    L --> Q
    M --> Q
    N --> S
    O --> Q
    P --> T

    L --> R
    M --> R
    N --> R
Loading

📊 Performance That Impresses

🚀 Performance Comparison Chart

graph LR
    subgraph "Mave CMS v2.0"
        A[API Response: 50ms]
        B[Concurrent Users: 100K+]
        C[Content Entries: Unlimited]
        D[CDN: Included]
        E[Real-time: WebSocket]
        F[Multi-tenant: Native]
    end

    subgraph "Competitors"
        G[API Response: 200-500ms]
        H[Concurrent Users: 10K]
        I[Content Entries: Limited]
        J[CDN: Extra Cost]
        K[Real-time: Polling]
        L[Multi-tenant: Plugin]
    end

    A --> G
    B --> H
    C --> I
    D --> J
    E --> K
    F --> L
Loading
Metric Mave CMS v2.0 Competitors
API Response Time < 50ms (p95) 200-500ms
Concurrent Users 100,000+ 10,000
Content Entries Unlimited Limited
Global CDN ✅ Included ❌ Extra Cost
Real-time Updates ✅ WebSocket ❌ Polling
Multi-tenant ✅ Native ❌ Plugin

📈 Performance Metrics Dashboard

Performance Scalability Uptime CDN


🚀 Quick Start (30 Seconds)

🎯 Choose Your Setup Method

Docker Heroku Local

🐳 Docker Setup (Recommended)

# Clone the repository
git clone https://github.com/atiqisrak/mave-2-cms
cd mave-2-cms

# Start with Docker Compose
docker-compose up -d

# Access your CMS
open http://localhost:3000

☁️ Heroku Setup

# Deploy to Heroku
git clone https://github.com/atiqisrak/mave-2-cms
cd mave-2-cms
git push heroku main

💻 Local Setup

# Install dependencies
pnpm install

# Setup environment
cp .env.example .env

# Start database
docker-compose up -d postgres redis

# Run migrations
npx prisma migrate dev

# Seed database
npx prisma db seed

# Start development server
pnpm run start:dev

🎮 Access Your CMS

Service URL Description
🌐 API http://localhost:3000 REST API Endpoint
🎮 GraphQL Playground http://localhost:3000/graphql Interactive GraphQL IDE
📊 Admin Dashboard http://localhost:3000/admin Management Interface
🗄️ Prisma Studio npx prisma studio Database GUI

🎯 Use Cases That Drive Results

Mave CMS Dashboard

🏢 Enterprise Websites

  • Multi-brand Management: Manage multiple brands from one dashboard
  • Content Workflows: Approval processes with role-based permissions
  • Global Teams: Multi-language content with translation management
  • Compliance: GDPR-ready with audit trails

🛒 E-commerce Platforms

  • Product Catalogs: Dynamic product management with variants
  • Content Marketing: Blog, guides, and landing pages
  • Customer Forms: Lead generation and feedback collection
  • API Integration: Connect to any e-commerce platform

📱 Mobile Applications

  • Content API: Serve content to iOS/Android apps
  • Real-time Updates: Push content changes instantly
  • Offline Support: Cache content for offline viewing
  • A/B Testing: Test different content variations

🎓 Educational Platforms

  • Course Management: Organize educational content
  • Student Forms: Registration and feedback forms
  • Multi-campus: Manage multiple institutions
  • Analytics: Track learning progress

🔧 Developer Tools & SDKs

Visual Editor

TypeScript SDK

import { MaveClient } from "@mave/cms-sdk";

const mave = new MaveClient({
  apiKey: "your-api-key",
  endpoint: "https://api.mave.io",
});

// Type-safe content operations
const posts = await mave.content.findMany({
  where: { published: true },
  include: { author: true, tags: true },
});

React Hooks

import { useContent, useMedia } from "@mave/cms-react";

function BlogPost({ id }) {
  const { data: post, loading } = useContent(id);
  const { getUrl } = useMedia();

  if (loading) return <div>Loading...</div>;

  return (
    <article>
      <h1>{post.title}</h1>
      <img src={getUrl(post.featuredImage.id, { width: 800 })} />
      <div dangerouslySetInnerHTML={{ __html: post.content }} />
    </article>
  );
}

Vue Composables

<script setup>
import { useContent } from "@mave/cms-vue";

const {
  data: posts,
  loading,
  error,
} = useContent({
  contentType: "blog-post",
  published: true,
  limit: 10,
});
</script>

<template>
  <div v-if="loading">Loading...</div>
  <div v-else-if="error">Error: {{ error.message }}</div>
  <div v-else>
    <article v-for="post in posts" :key="post.id">
      <h2>{{ post.title }}</h2>
      <p>{{ post.excerpt }}</p>
    </article>
  </div>
</template>

🌍 Global Infrastructure

Multi-Region Deployment

  • US East: Primary region for North America
  • EU West: European data sovereignty
  • Asia Pacific: Low-latency for Asian markets
  • Auto-failover: 99.99% uptime guarantee

CDN Performance

  • 200+ Edge Locations: Global content delivery
  • Image Optimization: Automatic WebP/AVIF conversion
  • Cache Invalidation: Instant content updates
  • Bandwidth: Unlimited with premium plans

💰 Pricing That Scales With You

💎 Pricing Comparison Chart

graph TD
    A[Starter - FREE] --> B[1K Entries<br/>1GB Storage<br/>Basic Support]
    C[Professional - $29/mo] --> D[10K Entries<br/>10GB Storage<br/>Priority Support]
    E[Business - $99/mo] --> F[100K Entries<br/>100GB Storage<br/>Custom Domains]
    G[Enterprise - Custom] --> H[Unlimited<br/>Dedicated Infrastructure<br/>SLA]

    style A fill:#e1f5fe
    style C fill:#f3e5f5
    style E fill:#e8f5e8
    style G fill:#fff3e0
Loading
Plan Price Features
Starter Free 1,000 content entries, 1GB storage, Basic support
Professional $29/mo 10,000 entries, 10GB storage, Priority support
Business $99/mo 100,000 entries, 100GB storage, Custom domains
Enterprise Custom Unlimited, Dedicated infrastructure, SLA

🎁 Special Offers

Early Bird Student Open Source


🏆 Why Choose Mave CMS v2.0?

vs. Strapi

  • Better Performance: 5x faster API responses
  • True Multi-tenancy: Native organization isolation
  • Advanced RBAC: Attribute-based access control
  • Real-time: WebSocket subscriptions included

vs. Contentful

  • Self-hosted: Complete data ownership
  • No Vendor Lock-in: Open source and portable
  • Better Pricing: No per-entry limits
  • More Flexible: Custom content types

vs. Sanity

  • Better Developer Experience: TypeScript-first
  • Enterprise Features: RBAC, audit logs, compliance
  • Global CDN: Included in all plans
  • Form Builder: Built-in, not separate

🚀 What's Coming Next

📅 Roadmap Timeline

gantt
    title Mave CMS v2.0 Development Roadmap
    dateFormat  YYYY-MM-DD
    section Q1 2026
    AI Content Assistant    :active, ai, 2026-01-01, 2026-03-31
    Advanced Search         :search, 2026-02-01, 2026-03-31
    Analytics Dashboard     :analytics, 2026-01-15, 2026-03-15

    section Q2 2026
    Video Streaming         :video, 2026-04-01, 2026-06-30
    Multi-site Management   :multisite, 2026-04-15, 2026-06-15
    Marketplace            :marketplace, 2026-05-01, 2026-06-30

    section Q3 2026
    Machine Learning       :ml, 2026-07-01, 2026-09-30
    Edge Computing         :edge, 2026-07-15, 2026-09-15
    Mobile SDKs           :mobile, 2026-08-01, 2026-09-30
Loading

Q1 2026 🎯

AI Search Analytics

  • 🤖 AI Content Assistant: Auto-generate content and SEO
  • 🔍 Advanced Search: Vector search with semantic understanding
  • 📊 Analytics Dashboard: Real-time content performance metrics

Q2 2026 🎬

Video Multi-site Marketplace

  • 🎥 Video Streaming: Built-in video processing and streaming
  • 🌐 Multi-site Management: Manage multiple websites from one dashboard
  • 🔗 Marketplace: Pre-built integrations and templates

Q3 2026 🧠

ML Edge Mobile

  • 🧠 Machine Learning: Content recommendations and personalization
  • 🌍 Edge Computing: Run custom logic at the edge
  • 📱 Mobile SDKs: Native iOS and Android SDKs

🤝 Join the Revolution

Connect Repository

Ready to Build the Future?

Get Started View Docs Join Discord


📞 Support & Community

🌟 Connect With Us

Email Discord Documentation GitHub Issues YouTube

📚 Resources

Blog Newsletter Twitter LinkedIn

🎯 Community Stats

Community Contributors Issues Resolved Response Time


📄 License

License

This project is licensed under the MIT License - see the LICENSE file for details.


👨‍💻 About the Creator

Atiq Israk

Atiq Israk - Full Stack Developer & CMS Architect

Login Interface

Portfolio LinkedIn GitHub Email

Building the future of content management, one commit at a time.


🌟 Previous Work

Send Pull Request

Mave v1 Mave v2


🚀 Get Involved

Thumbs Up

Star Fork Watch Twitter Follow

Made with ❤️ by Atiq Israk

About

Mave CMS v2.0 - The Future of Headless Content Management

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published