diff --git a/README.md b/README.md
index ee677cd4..08e7b48f 100644
--- a/README.md
+++ b/README.md
@@ -20,6 +20,7 @@ Watch the complete visual explainer video for an overview of AutoGraphQL, its ar
- [๐บ Video Overview & Architecture Walkthrough](#-video-overview--architecture-walkthrough)
- [๐ Core Features Overview](#-core-features-overview)
+- [๐ Why AutoGraphQL? Competitor Comparison](#-why-autographql-competitor-comparison)
- [๐ฆ Starter Template & Reference Schema (User & UserProfile)](#-starter-template--reference-schema-user--userprofile)
- [๐ฏ Real-World Use Cases](#-real-world-use-cases)
- [1. Headless CMS & Content Publishing](#1-headless-cms--content-publishing)
@@ -76,6 +77,26 @@ relational lookups into single database queries with in-memory tick memoization.
---
+## ๐ Why AutoGraphQL? Competitor Comparison
+
+> ๐ **Interactive Slide Deck**: Open **[`http://localhost:3000/slides`](http://localhost:3000/slides)** for the executive 16:9 presentation slide deck!
+> ๐ **Full Analysis**: Read the detailed technical breakdown in **[`docs/competitor-analysis.md`](docs/competitor-analysis.md)**.
+
+| Capability | โก AutoGraphQL | ๐ Hasura | ๐ Prisma | ๐ PostGraphile | ๐ Strapi |
+| :--- | :---: | :---: | :---: | :---: | :---: |
+| **Architecture Core** | **AST-Driven Engine** | Haskell Proxy | ORM Layer Only | SQL-to-GQL Proxy | Headless CMS |
+| **Runtime Environment** | **100% Native Node.js** | Haskell / Go | Node.js / Rust | Node.js | Node.js |
+| **Multi-Database Polyglot** | โ
**Native Mongo + Postgres** | โ ๏ธ SQL-first (Mongo weak) | โ ๏ธ ORM only, no API | โ Postgres only | โ ๏ธ SQL-first |
+| **Schema-First Workflow** | โ
**Pure GraphQL SDL** | โ DB-first + YAML | โ Proprietary DSL | โ DB DDL-first | โ Admin UI-first |
+| **Resolver Generation** | โ
**100% Zero-Code** | โ
Auto-generated | โ Manual (Apollo/Pothos) | โ
Auto-generated | โ ๏ธ Opinionated CMS |
+| **Visual Studio Platform** | โ
**Data + ERD + RBAC + Seeder** | โ ๏ธ Complex Console | โ ๏ธ Basic Data only | โ None (GraphiQL) | โ
Heavy CMS Admin |
+| **In-Process Lifecycle Hooks** | โ
**Native JS Pre/Post** | โ External HTTP Webhooks | โ
Native Middleware | โ ๏ธ SQL Functions | โ
Lifecycle Hooks |
+| **Row-Level Security (RLS)** | โ
**Directives (`@tenantScoped`)** | โ ๏ธ Complex Permissions DSL | โ Manual Query Filters | โ ๏ธ Postgres RLS | โ ๏ธ Plugin-based |
+| **Transactional Outbox** | โ
**Built-in Birdwatch + HMAC** | โ ๏ธ SQL Triggers | โ Needs Kafka/Debezium | โ External triggers | โ ๏ธ Basic Webhooks |
+| **Total Cost of Ownership (TCO)** | ๐ข **100% Free & Open Source** | ๐ด Expensive Enterprise Tier | ๐ข Open-source (High Dev Cost) | ๐ข Free & Open Source | ๐ก Paid Enterprise Tiers |
+
+---
+
## ๐ฆ Starter Template & Reference Schema (User & UserProfile)
> ๐ก **Educational Starter Reference**: The `User` and `UserProfile` types included in [`graphqlSchema/core/types/`](graphqlSchema/core/types/) are provided purely as a **starter template and reference schema**. They demonstrate 1-to-1 bidirectional relationships, declarative directives, and authentication handling.
diff --git a/docs/competitor-analysis.md b/docs/competitor-analysis.md
new file mode 100644
index 00000000..11346339
--- /dev/null
+++ b/docs/competitor-analysis.md
@@ -0,0 +1,84 @@
+# ๐ AutoGraphQL vs. Competitors: Comprehensive Comparative Analysis
+
+> **Why Engineering Teams Choose AutoGraphQL over Hasura, Prisma, PostGraphile, Strapi, and AWS AppSync**
+
+Modern development teams building data-driven applications face a difficult choice: spend weeks writing repetitive GraphQL CRUD resolvers and database models, or adopt complex proprietary platforms that lock them into specific databases or cloud vendors.
+
+**AutoGraphQL** solves this by delivering an **AST-driven, schema-first auto-generated GraphQL engine** natively for Node.js. Define standard `.graphql` types once with declarative directives, and AutoGraphQL automatically compiles dynamic MongoDB and PostgreSQL models, wires DataLoader batching, generates CRUD APIs with nested filtering, handles relational connectors, and provides an enterprise visual Studio platform.
+
+---
+
+## ๐ Executive Feature Matrix
+
+| Capability | โก AutoGraphQL | ๐ Hasura | ๐ Prisma | ๐ PostGraphile | ๐ Strapi | โ๏ธ AWS AppSync |
+| :--- | :---: | :---: | :---: | :---: | :---: | :---: |
+| **Core Architecture** | **AST-Driven Engine** | Haskell Proxy Engine | ORM Layer Only | Pg-to-GraphQL Proxy | Headless CMS Monolith | Managed Cloud Proxy |
+| **Runtime Environment** | **100% Native Node.js** | Haskell / Go Container | Node.js / Rust binary | Node.js | Node.js | AWS Cloud Only |
+| **Multi-Database Polyglot** | โ
**Native Mongo + Postgres Unified** | โ ๏ธ SQL-first (Mongo weak) | โ ๏ธ Supports both, but no API | โ PostgreSQL only | โ ๏ธ SQL-first | โ ๏ธ DynamoDB + Aurora |
+| **Resolver Generation** | โ
**100% Auto-Generated** | โ
Auto-Generated | โ Manual (Requires Apollo/Pothos) | โ
Auto-Generated | โ ๏ธ Opinionated CMS REST/GQL | โ Manual VTL / JS |
+| **Schema-First Workflow** | โ
**Pure GraphQL SDL** | โ Database-first + YAML | โ Prisma Schema DSL | โ Database DDL-first | โ Admin UI-first | โ ๏ธ AWS Console / SDL |
+| **Zero-Code Studio Platform** | โ
**Universal Data, ERD, RBAC, Seeder** | โ ๏ธ Complex Console | โ ๏ธ Prisma Studio (Basic Data only) | โ None (GraphiQL only) | โ
Heavy CMS Admin | โ ๏ธ AWS Console |
+| **In-Process Business Logic** | โ
**Native JS Pre/Post Hooks** | โ External Webhooks (Action microservices) | โ
Native JS (Middleware) | โ ๏ธ SQL Functions / Plugins | โ
Lifecycle Hooks | โ VTL / Lambda calls |
+| **Declarative Multi-Tenancy (RLS)** | โ
**Directives (`@tenantScoped`)** | โ ๏ธ Complex Permissions DSL | โ Manual query filtering | โ ๏ธ Postgres RLS policies | โ ๏ธ Plugin-based | โ ๏ธ IAM / Cognito |
+| **N+1 Batching & Prevention** | โ
**Request-Scoped DataLoader** | โ
Internal SQL Compiler | โ ๏ธ Manual / Fluent API | โ
Lookahead SQL Compiler | โ High N+1 risk on relations | โ ๏ธ Batch Lambda |
+| **Transactional Outbox & Webhooks** | โ
**Built-in Birdwatch + HMAC** | โ ๏ธ Event Triggers (SQL only) | โ Needs Kafka / Debezium | โ External triggers | โ ๏ธ Basic Webhooks | โ ๏ธ EventBridge integration |
+| **Synthetic Mock Seeder** | โ
**Built-in Contextual Seeder** | โ None | โ Manual seed scripts | โ None | โ None | โ None |
+| **Total Cost of Ownership (TCO)** | ๐ข **100% Free & Open-Source** | ๐ด Expensive Enterprise License | ๐ก Open-source ORM (Self-built API) | ๐ข Open-source | ๐ก Paid Enterprise Tiers | ๐ด Pay-per-query AWS bill |
+| **Cloud & Vendor Lock-in** | ๐ข **Zero (Deploy anywhere)** | ๐ก Proprietary metadata | ๐ข None | ๐ข None | ๐ข None | ๐ด Hard AWS lock-in |
+
+---
+
+## ๐ The 6 Unfair Advantages of AutoGraphQL
+
+### 1. ๐ฏ Pure Schema-First GraphQL SDL (No Proprietary DSLs)
+* **The Competition**: Hasura forces you into database-first tables and complex YAML/JSON metadata configurations. Prisma introduces a proprietary schema language (`schema.prisma`) that cannot be used directly by frontend GraphQL clients.
+* **AutoGraphQL**: Write pure, standard GraphQL SDL. Directives like `@model`, `@relation`, `@unique`, and `@trim` configure storage and behavior directly in the language your API already speaks.
+
+### 2. ๐๏ธ True Multi-Database Polyglot in a Single Schema
+* **The Competition**: PostGraphile only works on PostgreSQL. Hasura is deeply coupled to relational SQL engines and treats document stores as an afterthought.
+* **AutoGraphQL**: Natively compiles both **MongoDB (Mongoose)** and **PostgreSQL (Sequelize)** models in the exact same application. You can have a high-volume `EventLog` in MongoDB and an ACID-compliant `Payment` entity in PostgreSQL, queried together through a unified GraphQL schema!
+
+### 3. ๐ฅ๏ธ Enterprise Visual Studio Cockpit Included
+* **The Competition**: Prisma Studio only offers basic row editing. Hasura's console is notoriously dense with hundreds of metadata options. PostGraphile provides no admin UI beyond GraphiQL.
+* **AutoGraphQL Studio** is a complete, out-of-the-box visual developer cockpit:
+ * **Universal CRUD Data Grid**: Sortable, deep-filtered, inline cell editing with keyboard shortcuts.
+ * **Interactive Visual ERD Canvas**: Real-time graph with curved Bezier relation connectors and dialect tags.
+ * **Synthetic Mock Data Seeder**: 1-click generation of realistic test datasets with valid relational keys.
+ * **Visual RBAC Matrix & RLS Inspector**: Visual permission auditing across roles and tenant boundaries.
+ * **Live Telemetry & Winston Log Console**: Real-time metrics and streaming logs.
+ * **Spotlight Command Palette (`โK`)**: Instant search across models, tabs, and actions.
+
+### 4. โก In-Process Lifecycle Hooks (Zero Latency Overhead)
+* **The Competition**: Hasura does not allow running custom Node.js code in-process; every custom business rule requires setting up an external HTTP Action microservice with network overhead and serialization latency.
+* **AutoGraphQL**: Place JavaScript files in `hooks/` to intercept mutations with zero-latency Pre-Hooks and Post-Hooks. Validate, transform, encrypt, or trigger third-party APIs directly inside the Node.js event loop.
+
+### 5. ๐ก Built-In Transactional Outbox & Reliable Webhooks
+* **The Competition**: Most frameworks require setting up separate Kafka, RabbitMQ, or Debezium pipelines to guarantee that database changes trigger downstream webhooks reliably.
+* **AutoGraphQL**: The built-in **Birdwatch Transactional Outbox** guarantees that database events are reliably persisted and dispatched to webhooks with HMAC-SHA256 signatures, exponential backoff, and deduplication.
+
+### 6. ๐ฐ Zero Vendor Lock-in & Predictable Economics
+* **The Competition**: Hasura Enterprise charges steep per-core licensing fees, and AWS AppSync incurs compounding costs per million queries and websocket connections.
+* **AutoGraphQL**: 100% open-source, standard Node.js microservice. Run it in Docker, Kubernetes, AWS ECS, GCP Cloud Run, or on a $5/month VPS. No license keys, no per-query meter, no surprise bills.
+
+---
+
+## โฑ๏ธ Developer Velocity: Time to Production
+
+| Task | Traditional Setup (Prisma + Apollo) | Hasura | โก AutoGraphQL |
+| :--- | :--- | :--- | :--- |
+| **Define 10 Data Models** | Write `schema.prisma`, run migrations (30 mins) | Create 10 SQL tables, track in console (45 mins) | **Create `.graphql` files in `schemas/` (5 mins)** |
+| **Write CRUD Resolvers** | Write 50+ queries, mutations & inputs (4โ8 hours) | Auto-generated (0 mins) | **Auto-generated immediately (0 mins)** |
+| **Relational Connectors** | Write nested resolvers with DataLoader (3โ5 hours) | Manual relationship tracking in YAML (30 mins) | **Instant `@relation` queries & mutations (0 mins)** |
+| **Filtering & Pagination** | Implement boolean logic, regex, sorting (4 hours) | Built-in | **Built-in nested filter & sort engine (0 mins)** |
+| **Seed 50 Mock Records** | Write custom faker.js script (45 mins) | Write SQL inserts or CSV import (30 mins) | **1-click `๐ฒ Seed Mock Records` in Studio (10 secs)** |
+| **Visual Admin Dashboard** | Build custom Retool or React admin app (2โ4 days) | Console (No public end-user CRUD grid) | **Built-in AutoGraphQL Studio (0 mins)** |
+| **Total Setup Time** | **2โ3 Days** | **2โ4 Hours** | **โก Under 10 Minutes** |
+
+---
+
+## ๐ฏ When to Use AutoGraphQL
+
+* โ
**Rapid MVP to Scale**: When you need production-ready GraphQL APIs immediately without sacrificing architectural control or performance.
+* โ
**Polyglot Microservices**: When your application demands both MongoDB for high-write/flexible documents and PostgreSQL for relational integrity.
+* โ
**Multi-Tenant SaaS**: When you need strict Row-Level Security (`@tenantScoped`) without writing boilerplate query filters everywhere.
+* โ
**Enterprise Internal Tools**: When your operations team needs an instant visual CRUD and ERD console without building a custom admin panel.
diff --git a/src/studio/public/index.html b/src/studio/public/index.html
index 6212b858..276ef961 100644
--- a/src/studio/public/index.html
+++ b/src/studio/public/index.html
@@ -885,6 +885,9 @@
๐ Dump SDL
+
+ ๐ Why AutoGraphQL?
+
Playground โ
@@ -3247,7 +3250,8 @@
{ title: 'Export TypeScript SDK', icon: '๐ฆ', action: () => exportTypeScriptSDK() },
{ title: 'Dump GraphQL SDL', icon: '๐', action: () => exportSchemaSDL() },
{ title: 'Auto-Layout ERD Canvas', icon: 'โจ', action: () => { switchTab('tab-erd'); loadERDDiagram(); } },
- { title: 'Clear Server Logs', icon: '๐งน', action: () => { switchTab('tab-telemetry'); clearLogConsole(); } }
+ { title: 'Clear Server Logs', icon: '๐งน', action: () => { switchTab('tab-telemetry'); clearLogConsole(); } },
+ { title: '๐ View Competitor Analysis Slide (Hasura, Prisma, Strapi)', icon: '๐', action: () => window.open('/slides', '_blank') }
].filter(a => !q || a.title.toLowerCase().includes(q));
let html = '';
diff --git a/src/studio/public/slides.html b/src/studio/public/slides.html
new file mode 100644
index 00000000..aa49f82b
--- /dev/null
+++ b/src/studio/public/slides.html
@@ -0,0 +1,1005 @@
+
+
+
+
+
+ AutoGraphQL โ Competitor Analysis & Architecture Shootout
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Evaluation Dimension
+ โก AutoGraphQL
+ ๐ Hasura
+ ๐ Prisma
+ ๐ PostGraphile
+ ๐ Strapi
+ โ๏ธ AWS AppSync
+
+
+
+
+ Architecture Core
+ AST-Driven Engine
+ Haskell Proxy
+ ORM Layer Only
+ SQL-to-GQL Proxy
+ Monolithic CMS
+ Managed Cloud Proxy
+
+
+ Runtime Environment
+ 100% Native Node.js
+ Haskell Container
+ Node.js / Rust
+ Node.js
+ Node.js
+ AWS Cloud Only
+
+
+ Multi-Database Polyglot
+ โ
Mongo + Postgres
+ โ ๏ธ SQL-first (Mongo weak)
+ โ ๏ธ ORM only, no API
+ โ Postgres only
+ โ ๏ธ SQL-first
+ โ ๏ธ DynamoDB/Aurora
+
+
+ Schema-First Workflow
+ โ
Pure GraphQL SDL
+ โ DB-first + YAML
+ โ ๏ธ Proprietary DSL
+ โ DB DDL-first
+ โ Admin UI-first
+ โ ๏ธ AWS Console
+
+
+ Resolver Generation
+ โ
100% Zero-Code
+ โ
Auto-generated
+ โ 100% Manual Hand-coding
+ โ
Auto-generated
+ โ ๏ธ Opinionated CMS
+ โ Manual VTL/JS
+
+
+ Visual Studio Platform
+ โ
Data + ERD + RBAC + Seeder
+ โ ๏ธ Complex Metadata Console
+ โ ๏ธ Prisma Studio (Basic Data)
+ โ None (GraphiQL only)
+ โ
Full CMS Admin
+ โ ๏ธ AWS Console
+
+
+ In-Process Lifecycle Hooks
+ โ
Native Node.js Pre/Post
+ โ External Actions (HTTP)
+ โ
Native Middleware
+ โ ๏ธ SQL Functions / Plugins
+ โ
Lifecycle Hooks
+ โ VTL / Lambda calls
+
+
+ Row-Level Security (RLS)
+ โ
Directives (@tenantScoped)
+ โ ๏ธ Complex Permissions DSL
+ โ Manual Query Filters
+ โ ๏ธ Postgres RLS
+ โ ๏ธ Plugin-based
+ โ ๏ธ IAM / Cognito
+
+
+ Transactional Outbox & Webhooks
+ โ
Built-in Birdwatch + HMAC
+ โ ๏ธ SQL Triggers
+ โ Needs Kafka/Debezium
+ โ External triggers
+ โ ๏ธ Basic Webhooks
+ โ ๏ธ EventBridge
+
+
+ Enterprise Licensing & TCO
+ ๐ข 100% Free & Open Source
+ ๐ด Expensive Core License
+ ๐ข Free ORM (High dev cost)
+ ๐ข Free & Open Source
+ ๐ก Paid Enterprise Tiers
+ ๐ด Compounding AWS bill
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
๐ฏ
+
Pure Schema-First SDL
+
Write standard GraphQL SDL. Declarative directives (`@model`, `@relation`, `@unique`, `@trim`) generate databases, CRUD resolvers, and validation automatically.
+
vs Hasura/Prisma: No proprietary YAML metadata or Prisma DSL required.
+
+
+
+
๐๏ธ
+
True Polyglot Multi-DB
+
Run MongoDB (Mongoose) and PostgreSQL (Sequelize) side-by-side in the exact same schema. High-volume docs and relational ACID data unified under 1 GraphQL endpoint.
+
vs PostGraphile/Hasura: Not locked into Postgres or relational SQL.
+
+
+
+
๐ฅ๏ธ
+
Enterprise Studio Cockpit
+
Universal Data Browser (CRUD Grid), Interactive Visual ERD Canvas with Bezier links, Synthetic Mock Seeder, RBAC matrix, and Spotlight Command Palette (`โK`).
+
vs Prisma/PostGraphile: Complete zero-code operational cockpit out of the box.
+
+
+
+
โก
+
Zero-Latency In-Process Hooks
+
Add custom validation, slug generation, encryption, or external APIs directly in JavaScript Pre-Hooks and Post-Hooks running inside the Node.js event loop.
+
vs Hasura: No HTTP Action microservice network lag or serialization costs.
+
+
+
+
๐ก
+
Built-in Transactional Outbox
+
Birdwatch transactional outbox guarantees reliable event persistence and webhook delivery with HMAC-SHA256 signing, exponential backoff, and deduplication.
+
vs Prisma/Apollo: Zero need to deploy Kafka, RabbitMQ, or Debezium clusters.
+
+
+
+
๐ฐ
+
Zero Lock-In & Open Source
+
Deploy anywhere Node.js runs: Docker, Kubernetes, AWS ECS, GCP Cloud Run, or a $5 VPS. Zero per-core enterprise tax, zero proprietary cloud runtime dependencies.
+
vs AWS AppSync/Hasura Enterprise: Predictable, transparent open-source economics.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
1
+
+ Define Prisma Schema & Run Migrations (30 mins)
+ Write schema.prisma, create SQL migrations, generate Prisma Client.
+
+
+
+
2
+
+ Hand-Code 50+ GraphQL Resolvers & Inputs (6โ8 hours)
+ Write queries, mutations, type definitions, and input types for every model.
+
+
+
+
3
+
+ Implement DataLoader & N+1 Prevention (4 hours)
+ Configure request-scoped data loaders for nested relationships.
+
+
+
+
4
+
+ Build Custom Admin Panel (1โ2 days)
+ Spin up Retool or custom React dashboard for operations team CRUD.
+
+
+
+
+
+
+
+
+
+
+
โ
+
+ Drop `.graphql` SDL files in `schemas/` (5 mins)
+ Add models with `@model`, `@relation`, `@unique`, `@trim`. AutoGraphQL compiles databases instantly.
+
+
+
+
โ
+
+ 100% Instant Resolvers, Inputs & DataLoader (0 mins)
+ Full CRUD queries, batch mutations, relational connectors, and request DataLoader are ready automatically.
+
+
+
+
โ
+
+ Seed 50 Realistic Mock Records in Studio (10 secs)
+ Click `๐ฒ Seed Mock Records` in Studio for instant prototype datasets with valid CUIDs.
+
+
+
+
โ
+
+ Built-in Enterprise Studio Cockpit Ready (0 mins)
+ Data browser, ERD canvas, RBAC matrix, and command palette (`โK`) ready immediately at `/studio`.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
$0 / mo
+
No Enterprise Licensing
+
Hasura Enterprise charges per-core fees. AutoGraphQL is 100% open source under Apache 2.0 with no feature paywalls.
+
+
+
+
80% Less
+
Boilerplate Maintenance
+
Zero handwritten resolvers, zero migration drift, zero manual DataLoader wiring across MongoDB and Postgres.
+
+
+
+
100% Native
+
Node.js Ecosystem
+
Runs seamlessly in your existing JavaScript/TypeScript CI/CD pipelines, npm packages, and container infrastructure.
+
+
+
+
+
+
๐ Rapid MVP to Scale
+
Launch complete GraphQL APIs and admin tooling in minutes without accumulating technical debt.
+
+
+
๐๏ธ Polyglot Architecture
+
Combine high-write MongoDB document stores and relational PostgreSQL ACID tables in a single unified schema.
+
+
+
๐ข Multi-Tenant SaaS
+
Enforce strict Row-Level Security (`@tenantScoped`) at the GraphQL AST layer before queries touch the database.
+
+
+
๐ ๏ธ Operational Cockpit
+
Empower engineers, QA, and operations teams with instant CRUD, mock seeding, and visual ERD relationships.
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/studio/studioRoutes.js b/src/studio/studioRoutes.js
index a1c81af2..b379a51e 100644
--- a/src/studio/studioRoutes.js
+++ b/src/studio/studioRoutes.js
@@ -29,6 +29,16 @@ router.get(['/studio', '/console'], (req, res) => {
}
});
+// 1b. Serve Competitor Analysis Presentation Slide
+router.get(['/slides', '/slides/competitor-analysis'], (req, res) => {
+ const slidePath = path.resolve(__dirname, 'public', 'slides.html');
+ if (fs.existsSync(slidePath)) {
+ res.sendFile(slidePath);
+ } else {
+ res.status(404).send('Competitor Analysis Slide not found');
+ }
+});
+
// 2. GET /api/studio/schemas - List all schemas
router.get('/api/studio/schemas', (req, res) => {
try {