routes

page — an HTML page: path, hbs (template name), optional view. A request with the HX-Request header (HTMX) gets the fragment without layout.

api, GET — serves view data: path, view, format (json | html).

api, method POST — a public form endpoint:

keydescription
insert_intotarget table for INSERT
fieldsfields a client may submit: name, required, max_length
auto_fieldsserver-side values: now | client_ip | client_user_agent
honeypotbot-trap field name; a non-empty value means silent success, nothing stored
rate_limitper_key_per_minute + key (ip | ip_ua); over the limit — 429
on_success / on_errorredirect to a path, or render an hbs template
formatjson — respond with JSON instead of html/redirect

Paths under /cms are reserved for the admin UI.

← All articles in this group