How the compiler works

From schema export to a deployable graph platform.

Describe your domain model once — SQL export, Excel, or JSON. AutoGraphDB validates it, runs 16 specialized generation passes, and packages 100+ production artifacts. Regenerate when the model changes and the entire platform updates together.

Compiler pipeline

Same model → same output — every time

Schema / ExcelInput
ValidationModel gate
16 generatorsSpecialized passes
PackagingZIP + report
Repositories
REST APIs
Swagger
TypeScript SDK
Postman

Every layer is generated from the same validated entity model — see the sandbox for the verified ContosoErp sample (counts load live from the API).

The input sheet

The Excel workbook has two tabs. The first (Instructions) is a complete, friendly guide to filling it in. The second (Entities) is where you list your model — and it doubles as the ready-to-run sample. You can also skip Excel entirely and POST a JSON model to the API.

The three columns

ColumnWhat goes in it
EntityA singular, PascalCase name — e.g. Employee, EmployeeAsset. Prefix with enum_ to define an enum (e.g. enum_Rating).
FieldsComma-separated type Name pairs, plus relationships (see below). For enums, just list the values.
FeatureThe module/menu this entity belongs to (e.g. HR). Used to group the navigation and the architecture diagrams.

Fields, by example

You writeMeaning
string NameA scalar property. Use portable model types: string, int, long, bool, decimal, double, DateTime, Guid (mapped to your target language on generation).
int? RatingNullable — add ? to any value type.
byte[] PhotoBinary (image/document). Handled specially and excluded from the graph node.
Company CompanyA foreign key — a link to another entity. Becomes a HAS_COMPANY relationship in the knowledge graph.
Employee Employee_ManagerA named link to the same or another entity (here, a self-reference). The suffix becomes the relationship name: HAS_MANAGER.
… |Team,EmployeeA collection: after a single |, list the child entities that reference this one. Generates incoming traversal queries.

Enums

Add a row with the entity name prefixed by enum_ and put the values in the Fields column:

Entity        Fields
enum_Rating   Poor,Fair,Good,Excellent

A complete sample row

Entity      Fields                                                          Feature
Employee    string Code, string Name,
            Department Department, Team Team,
            Employee Employee_Manager, EmployeeType EmployeeType,
            int? Rating, decimal? Salary, DateTime JoinedOn, byte[] Photo   HR

That single row produces node models, repositories, REST APIs, sync services, schema constraints, TypeScript client, Postman collection, architecture diagrams, native-import headers, and FK-derived traversal queries — all consistent in one platform ZIP.

Generate it

Three entry points, same engine, same run report:

🧪

Sandbox

The fastest look — run the sample and explore the run report in your browser.

Open the sandbox →

🧰

Swagger UI

Upload your sheet or paste a model and try every endpoint interactively.

Open Swagger →

⌨️

API / CI

Script it. Submit a job and poll, or generate synchronously in a single request.

CI/CD guide →

Upload your Excel sheet

curl -F "projectName=MyApp" \
     -F "file=@Sample_InputSheet.xlsx" \
     https://autographdb.com/api/generate/graph/from-excel \
     -o MyApp-graphdb.zip

Or POST a JSON model

curl -X POST https://autographdb.com/api/generate/graph \
     -H "Content-Type: application/json" \
     -d '{
       "projectName": "MyApp",
       "entities": [
         { "entity": "Customer", "fields": "string Name, string Email", "feature": "Sales" },
         { "entity": "Order",    "fields": "string Ref, Customer Customer, decimal Total", "feature": "Sales" }
       ]
     }' -o MyApp-graphdb.zip

Large model? Use an async job

# 1. Submit — validates synchronously, then queues generation
POST /api/jobs/graph          → 202 { "id": "abc123", "status": "Queued" }

# 2. Poll until complete (typically <5 seconds for 50 entities)
GET  /api/jobs/{id}           → { "status": "Succeeded", "downloadUrl": "/api/jobs/abc123/download" }

# 3. Download the ZIP
GET  /api/jobs/{id}/download  → MyApp-graphdb.zip  (68+ files)

# 4. View the HTML run report
GET  /api/jobs/{id}/report    → self-contained HTML report

What each compile produces

Verified on the ContosoErp sample — artifact counts and component categories match the sandbox (Pro-tier compile: semantic layer, intents, ontology, queries).

1Database — nodes, relationship types, schema.cypher, constraints
2Application — repos, MVC + REST, Swagger, TypeScript SDK, Postman
3Operations — sync, seeders, Docker, native import bundle
4Semantic — typed rels, traversal intents, ontology.json (plan-gated in API)
5Documentation — diagrams, HTML + Markdown run report

Traversal library (FK-derived + semantic intents)

AutoGraphDB generates structural traversals from your foreign keys. With the domain semantic layer (Starter+), named traversal intents from active rule packs are added to the query library. We do not infer arbitrary business flows from column names or translate natural language to Cypher.

Available on Starter plans and above. Traversals do not include natural-language query generation or semantic flows (purchase lifecycle, approval chains) unless explicitly modeled in your schema. See plans →

Schema evolution

When your relational model changes, regenerate with a prior schema snapshot to produce schema-migration.cypher and schema-diff.md, plus updated sync, APIs, SDK, and traversal library — the entire platform stays aligned instead of drifting into manual repair.

Available on Starter plans and above.

Demo data seeding

The DemoDataSeeder generates 10 realistic rows per entity with typed values (emails get email formats, dates get contextual dates, names get human names, etc.) and creates all relationships respecting FK topology. Use it to:

Available on Pro plans and above.

Live graph deployment

Connect directly to a running graph database instance and deploy your generated platform live — schema (constraints + indexes), node data (via UNWIND batches of 500), and relationships — all through a circuit breaker that handles connection failures gracefully:

Available on Pro plans and above.

Web generation form

Signed-in users can now generate directly from the browser at /app.html:

Authentication & usage tracking

Sign in with Google to access generation endpoints. Your dashboard shows run history, usage meters, and current plan. Free plan: 5 lifetime runs, max 20 entities/run. View all plans →

Ready to compile?

Explore the verified sample in the sandbox, then run the compiler on your own schema. No signup required to start.

7-day full access · No credit card · Cancel anytime