• Getting Started
    • Installation
    • MCP Server
    • Guides and Concepts
    • Migrating from react-admin
    • Changelog
  • Type Safety
  • React
  • Vue
  • App Config
  • Page Components
  • Viewing
  • Editing
  • UI & Layout
  • Realtime
  • Maps
  • Supabase
  1. Docs
  2. Type Safety

Type Safety

Register your resources once, and every source, filter and key is checked.

Overview

Chelone compiles loose. One file of registration is what turns a source from a plain string into a checked path.

Registering Your App

One declare module block tells Chelone your resources, permissions and message catalog. Every typed source, hook and component reads it.

Resource Registry & Codegen

defineResources builds the resource map, RecordOf reads a record type out of it, and chelone-supabase writes the map from your database.

Typed Components

How a component's source narrows to one resource's record, and createResourceComponents, the factory that binds a resource into every field, input and view.

Typed Hooks

How a data hook or composable gets its record type, what createCheloneHooks binds, and which hooks the registry never reaches.

Sources, Filters & Sort

The path grammar behind source, and the keys filters and sort buttons take.

Translations & Permissions

What Register.messages and Register.permissions do to translate, useTranslate and usePermissions.

When Types Widen

Every fallback that keeps an app compiling before and after registering, what each one gives up, and what the checks cost an editor.