ExetJS Documentation
This directory contains the canonical source documentation for the ExetJS repository.
Full public documentation is available at https://exetjs.com/.
Documentation map
| Document | Purpose |
|---|---|
| Getting started | Local development and first project workflow |
| Core runtime | Core documentation entry point |
| CLI | exet commands, options and module installation behavior |
| Architecture | Core module and lifecycle architecture |
| Module authoring | Rules for authoring installable and application modules |
| Module catalog | Entry point for installable module documentation |
| Auth module | Auth routes, repository contract, configuration and production boundaries |
| Database modules | Complete reference for MongoDB, PostgreSQL, MySQL, MariaDB and SQLite |
| Testing | Repository validation, live database tests and package checks |
| Roadmap | Current and future scope |
| DB 0.2.0 validation record | Version-specific Bulgarian validation record for the DB release |
Changelog (../CHANGELOG.md) | Release history and notable changes in the repository root |
Canonical documentation rules
Documentation is part of the public contract. A code change is not complete until the corresponding reference is updated.
Update documentation in the same change whenever any of these change:
- a public export, type, function or module factory;
- an
exetcommand, option or interactive behavior; - an installable module name or
manifest.jsoncontract; - an environment variable, default value or configuration precedence rule;
- a lifecycle state, dependency rule, health behavior or error code;
- a route, request schema, response contract or authentication behavior;
- a native driver requirement, TLS rule or production prerequisite;
- a supported Node.js, package-manager or Core compatibility requirement.
Source of truth
Use these rules when implementation and prose disagree:
- Public package types and shipped templates define current runtime behavior.
manifest.jsondefines install-time dependencies and generated env examples.- Tests define validated behavior, not undocumented product guarantees.
- This documentation must be updated to match the shipped behavior before release.
The internal DB authoring source in tools/db-core is not consumer documentation. Consumers should rely on Database modules and the public documentation website.
Release documentation gate
Before publishing a release:
[ ] Root README reflects the current package/module scope.
[ ] Published package READMEs contain a link to https://exetjs.com/.
[ ] New or changed modules have complete reference documentation.
[ ] Environment variables and defaults match shipped manifests/templates.
[ ] Public exports and examples compile conceptually against shipped APIs.
[ ] Testing status describes what was actually validated.
[ ] Changelog reflects user-visible additions and compatibility changes.
[ ] Version-specific validation records do not contain stale limitations.
The npm package README is intentionally concise. The complete documentation remains available at https://exetjs.com/.