Guides / Project structure
A place for every change.
Start with your intention. Caramel’s conventions give it a home, and its tools help you check the result.
What are you changing?
Add or change an endpoint
config/routes.crapp/actions/Declare the route, then its typed contract and behavior. Keep the response and failure cases in a request spec.
frappe routes · frappe check · frappe correttoMeet the framework
FrappéYour developer command line
LatteLocal services and named HTTPS
SugarORMSchemas, changesets, and queries
Blueprint viewsHTML written in typed Crystal
Cold BrewPostgreSQL-backed background work
CorrettoApplication tests with real data
Application code is the extension point
Keep changes in your application’s files. When the public API does not support a task, identify the gap before changing framework internals.