What Pharos Framework does today
/ucal and /dev_docs from one shared Pharos deployment.How app authoring works
Pharos is designed so app teams spend most of their time authoring app-owned declarative files instead of rebuilding the same runtime plumbing over and over.
In a typical app, you define:
pharos.app.jsonfor app identity, runtime profile, asset locations, and fixture locationstemplates/for app-owned HTML and page fragmentsfixtures/anddata/for route, surface, workflow, and app data declarationsstatic/andmedia/for shipped assetsapp.conffor deploy-local overrides such as base path, state paths, and database settings
The runtime then turns those declarations into a running app with shared request parsing, rendering, packaging, and deployment behavior.
Why teams would choose it
Business logic Pharos scaffolds today
Pharos already scaffolds a meaningful class of business logic when the app fits the current framework-owned generated surface model.
- route matching from checked route fixtures
- generated admin CRUD behavior
- generated API CRUD behavior
- shared validation, coercion, and relation checks
- capability and policy gating
- tenant and context scoping
- collection filtering, sorting, projection, and pagination
- shared audit-event emission for generated writes
This means Pharos already scaffolds real admin-style and API-style domain behavior from declarative manifests, fixtures, and templates. The strongest current path is generated CRUD, not arbitrary custom workflow logic.
Current app model
Pharos currently supports two main hosting profiles:
static-pages— packaged static app artifacts with app-local contentdynamic-app— runtime-served apps with declarative inputs, native request handling, and relational persistence support
SQLite and PostgreSQL are the supported relational backends. Runtime scratch JSON files may exist as operational surfaces, but they are not the primary source of truth when a relational backend is active.
Start with: