Skip to main content

Auto-discovery

Three directories are scanned at startup and their contents registered automatically:

models/

SQLAlchemy models.

services/

Business logic classes.

routes/

api/ mounts at /api/*, pages/ at /*.
Discovery is strict: a module that fails to import stops the app rather than being silently dropped. Set FEATHER_LENIENT_DISCOVERY=1 to warn and continue while you fix it.

Framework-provided assets

These are served from /feather-static/ and auto-update with Feather upgrades:
  • Components — see the component reference for the full list
  • JavaScriptapi.js (CSRF-aware fetch) and feather.js (the Islands runtime)
Override any component by creating your own version in templates/components/. A component that shares a filename with a framework component takes precedence, and feather components marks it as overriding.