s-m-r-t documentation · 0.38.26

Build an application from the model outward.

s-m-r-t starts with TypeScript objects and connects the common application pieces around them: storage, tenants, users, permissions, web pages, APIs, agent tools, and operator commands.

Choose where to start

Both paths use the same foundations and package reference.

How an application comes together

These guides move from describing the product to deciding ownership, identity, access, and interfaces. Read across them or enter at the part you need.

  1. 01

    Model your application

    An object is one record, such as an Item or Invoice. Its collection is the place you work with many of those records.

  2. 02

    Decide where data belongs

    A tenant can be one customer account, a branch inside a larger organization, or a member of a network. You decide which shape matches the business.

  3. 03

    Add people and accounts

    A user answers “who signed in?” A profile answers “who or what is this in the product?” They are related, but they are not the same record.

  4. 04

    Grant access

    A membership connects a user, a tenant, and a role. Permissions are named actions such as items.read or articles.publish.

  5. 05

    Build pages and live data

    SvelteKit can send useful HTML with the first response. Hydration gives those same rows to the browser store, so it does not immediately fetch them again.

  6. 06

    Connect APIs, tools, and agents

    You choose what people, agents, browsers, and operators can do. s-m-r-t generates the repetitive route, tool, schema, and command wiring.

Newer parts of the framework

Use these when the basic application path reaches the problem they solve.