Project Structure
A Sixb project has one configuration file and folders for its definitions. Sixb automatically loads the definitions you export from their matching folders.
Explore a project
Explore a project based on the Sixb starter. Select a file to see how the pieces fit together.
my-sixb-app
TSsatellite.ts
Define the object your app works with.
import { defineObjectType, prop } from "@sixb/core/ontology"
export const Satellite = defineObjectType({
id: "Satellite",
name: "Satellite",
description:
"A spacecraft located from public orbital elements.",
properties: [
prop("id", "string", { required: true, primary: true }),
prop("name", "string", { required: true }),
prop("tleLine1", "string", { required: true }),
prop("tleLine2", "string", { required: true }),
prop("elementEpoch", "timestamp", { required: true }),
],
})
Files and folders
| Path | Purpose |
|---|---|
sixb.config.ts | Project configuration and providers, exported as sixb |
ontology/ | Your domain's types, properties, and relationships |
connectors/ | Access to external APIs, databases, and services |
datasets/ | The structure of your source and prepared data |
syncs/ | Importing data from connectors into datasets |
pipelines/ | Cleaning and combining datasets |
projections/ | Mapping dataset rows to your domain model |
actions/ | Operations that change your domain's state |
workflows/ | Processes with multiple steps |
rules/ | Conditions that signal when objects need attention |
schedules/ | Timer and event triggers for background work |
security/ | Access control in groups/, roles/, and policies/ |
shares/ | Permissions that can be granted through a share link |
app/ | React pages and layouts, with their own routing conventions |
skills/ | Agent instructions in <name>/SKILL.md and supporting resources |
SIXB.md | Instructions the chat agent follows in every conversation |
lib/ | Shared helpers imported by your project |
How files are loaded
- Export backend definitions from their matching folders.
- File names are up to you. Sixb also loads definitions from subfolders.
- The starter creates only the folders it needs. Add optional folders as your project grows.
- Keep tests and standalone scripts outside definition folders, since Sixb imports their modules.
The exception is
ontology/: Markdown files andscripts/folders there are given to the agent, not imported.
See Organizing your project for examples of grouping related files.