Declare entities, fields, types, IDs, and relationships for backend model generation.
Project Compiler
Build apps from declared structure.
NovaDev can compile high-level app declarations into ProjectIR, then generate project-specific Vue, Tailwind, Flask, routes, models, workflow hooks, custom modules, 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 Flask
database SQLite
structure VueFlask
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 Flask route files from declared HTTP routes and workflow endpoints.
Declare auth models, role requirements, and protected pages or routes.
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 UI with mode-aware design profiles instead of the same shared CSS everywhere.
Generate frontend services, views, routes, backend models, API routes, and starter app files.
app ChurchMediaSystem {
project {
frontend Vue
backend Flask
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.