Declare entities, fields, types, IDs, and relationships for backend model generation.
Project Compiler
Build apps from declared structure.
NovaDev parses high-level app declarations into one canonical ProjectIR, then emits Vue/Vite frontends and Express/Node backends with SQLite, workflows, auth, custom modules, tests, and documentation.
ProjectIR
The middle layer that makes generation specific.
ProjectIR stores what the developer declared: app name, mode, pages, tables, routes, workflows, modules, custom code, architecture, styling, database, backend target, and frontend target. Generators read ProjectIR instead of copying the same template into every project.
Important: mode custom means NovaDev does not assume ecommerce, school, CRM,
construction, or any other domain. It generates from only what the developer declares.
app StoreFront {
project {
frontend Vue
backend Express
database SQLite
structure VueExpress
styling Tailwind
mode ecommerce
}
table Product {
id auto
name text
price money
stock int
}
page Home {
type catalog
section Products from Product
}
}
Modes
Common categories get helpful defaults. Custom mode gets full control.
Modes help NovaDev choose better page structure, data displays, workflows, naming, and Tailwind styling profiles. They are not hardcoded clone pages; they should respond to the app's declarations.
- custom
- ecommerce
- construction
- crm
- school
- portfolio
- restaurant
- booking
- dashboard
- blog
- cms
- church
- gym
- inventory
- delivery
- realestate
- healthcare
- finance
- trading
- security
- nonprofit
- event
- hotel
- salon
- learning
- marketplace
- social
- forum
- projectmanagement
- invoice
- pos
- supportdesk
- logistics
Project Features
What the compiler can generate from Nova code.
Generate dashboard, catalog, form, table, landing, marketing, admin, and custom page layouts.
Create Express blueprints or Express routes from declared HTTP routes and workflow endpoints.
Generate SQLite-backed accounts, password hashing, expiring tokens, secure-field redaction, and server-side role policies.
Describe actions like checkout, lead capture, prayer submission, booking, attendance, or scanning.
Wrap Python code in Nova modules so generated backends can call project-specific logic.
Declare folders and files like Dockerfile, utility modules, docs, and app-specific structure.
Generate local responsive CSS and mode-aware design tokens instead of a shared stylesheet copied across projects.
Choose the supported Vue/Vite plus Express/Node target with Tailwind, SQLite/Prisma, workflows, auth, custom modules, tests, and generated docs.
app ChurchMediaSystem {
project {
frontend Vue
backend Express
styling Tailwind
mode custom
}
table Sermon {
id auto
title text
speaker text
videoUrl text
date date
}
workflow SubmitPrayer {
input PrayerRequest
creates PrayerRequest
notify Admin
}
page Home {
type landing
section Sermons from Sermon
form PrayerRequest
}
}
Custom Mode
Use NovaDev for projects that do not fit a common category.
A church media system, trading journal, gym billing app, refund tracker, scanner, portfolio CMS, or dispatch
tool should not receive ecommerce defaults. With mode custom, the developer controls the shape.