Skip to content

πŸ“¦ A collection of small, ready-to-deploy application templates for the ObjectStack cloud marketplace.

Notifications You must be signed in to change notification settings

objectstack-ai/templates

Repository files navigation

@objectstack/templates

License: MIT Spec

A collection of small, ready-to-deploy application templates for the ObjectStack cloud application marketplace.

Overview

This repository contains lightweight application templates built on @objectstack/spec v3.0.8. Each template is a self-contained, deployable application designed to be published to the ObjectStack cloud marketplace.

Unlike HotCRM β€” a large, complex enterprise CRM system β€” the templates in this repository are intentionally minimal and focused, serving as building blocks and starting points for common business use cases.

Available Templates

Template Description Objects
todo Task management app with lists, items, and priorities 2
blog Blog and content management with posts and categories 3
inventory Inventory tracking with products, stock levels, and suppliers 3

Quick Start

# Prerequisites: Node.js >= 20.9.0, pnpm >= 9.0.0
git clone https://github.com/objectstack-ai/templates.git
cd templates
pnpm install

# Run a specific template in development mode
pnpm --filter @templates/todo dev

# Build all templates
pnpm build

# Run tests
pnpm test

# Typecheck
pnpm typecheck

Repository Structure

templates/
β”œβ”€β”€ templates/               # Application templates (each is a standalone app)
β”‚   β”œβ”€β”€ todo/               # Task management template
β”‚   β”‚   β”œβ”€β”€ src/            # Source files (objects, hooks, plugin)
β”‚   β”‚   β”œβ”€β”€ package.json
β”‚   β”‚   β”œβ”€β”€ tsconfig.json
β”‚   β”‚   └── objectstack.config.ts
β”‚   β”œβ”€β”€ blog/               # Blog / CMS template
β”‚   └── inventory/          # Inventory management template
β”œβ”€β”€ package.json            # Monorepo root
β”œβ”€β”€ pnpm-workspace.yaml     # Workspace config
β”œβ”€β”€ tsconfig.json           # Root TypeScript config
β”œβ”€β”€ base.tsconfig.json      # Shared TypeScript base
β”œβ”€β”€ vitest.config.ts        # Test config
└── ROADMAP.md              # Development roadmap

Creating a New Template

Each template follows the same structure as an ObjectStack plugin:

templates/my-app/
β”œβ”€β”€ package.json            # Package manifest
β”œβ”€β”€ tsconfig.json           # TypeScript config (extends base.tsconfig.json)
β”œβ”€β”€ objectstack.config.ts   # Standalone run config
└── src/
    β”œβ”€β”€ plugin.ts           # Plugin definition (objects, hooks, actions, apps)
    β”œβ”€β”€ *.object.ts         # Business object definitions
    └── hooks/              # Event hooks (optional)
        └── *.hook.ts

Step-by-step

  1. Create the directory: mkdir templates/my-app
  2. Add package.json with name @templates/my-app
  3. Add tsconfig.json extending ../../base.tsconfig.json
  4. Define objects in src/*.object.ts using ObjectSchema.create()
  5. Wire everything in src/plugin.ts
  6. Add objectstack.config.ts for standalone execution
  7. Update tsconfig.json and vitest.config.ts at the root to include the new template

Tech Stack

  • Runtime: @objectstack/spec v3.0.8
  • Language: TypeScript >= 5.3.0
  • Package Manager: pnpm >= 9.0.0
  • Node.js: >= 20.9.0
  • Testing: Vitest

Contributing

See CONTRIBUTING.md for contribution guidelines.

License

MIT

About

πŸ“¦ A collection of small, ready-to-deploy application templates for the ObjectStack cloud marketplace.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •