Register Schemas
Defines and registers the complete Planix data model in OpenRegister.
Overview
Planix uses OpenRegister to store its data model. The planix_register.json file defines 5 schemas and seed data that are automatically imported when the app is installed or upgraded.
Schemas
- task — A work item with title, description, status, priority, assignee, dates, and labels
- project — A container for tasks with members, colors, and case references
- column — A kanban board column with WIP limits and ordering
- timeEntry — A time tracking record linked to a task
- label — A categorization tag with color coding
Seed Data
Fresh installs include demo data:
- 5 labels: Bug, Feature, Docs, Design, Infrastructure
- 3 projects: Client Portal v2, Infrastructure Migration, Onboarding Automation
- 12 columns: 4 per project (To Do, In Progress, Review, Done)
- 5 tasks with realistic assignments
- 3 time entries
Technical Details
- Schemas are defined in
lib/Settings/planix_register.json - Import is triggered by the
InitializeSettingsrepair step (declared inappinfo/info.xml) SettingsService::loadConfiguration()reads the JSON, parses it, and callsConfigurationService::importFromApp()- Import is idempotent — re-running does not create duplicates
- Required fields are validated by OpenRegister (e.g., task requires
titleandstatus)