shiva make
Scaffold boilerplate for modules, services, models, migrations, seeds, tests, and contracts.
Usage
bash
shiva make:<type> [name] [options]Commands
shiva make:module <name>
Scaffold a new module.
bash
shiva make:module my-fishingCreates resources/[shiva]/my-fishing/ with the full module structure.
Options:
| Flag | Description |
|---|---|
--no-ui | Skip the ui/ directory |
--no-client | Server-only module (no client scripts) |
--provides <contract> | Pre-fill the provides field in manifest.lua |
shiva make:service <module> <name>
bash
shiva make:service my-fishing FishingServiceCreates resources/[shiva]/my-fishing/server/services/FishingService.lua.
shiva make:model <module> <name>
bash
shiva make:model my-fishing FishingLogCreates resources/[shiva]/my-fishing/shared/models/FishingLog.lua.
shiva make:migration <module> <description>
bash
shiva make:migration my-fishing create_fishing_logsCreates resources/[shiva]/my-fishing/migrations/001_create_fishing_logs.lua (auto-numbered).
shiva make:seed <module> <name>
bash
shiva make:seed my-fishing FishingSpotsCreates a seeder file at resources/[shiva]/my-fishing/seeds/FishingSpots.lua.
shiva make:contract <name>
bash
shiva make:contract inventoryCreates a contract definition file at contracts/inventory.lua.
shiva make:test <module>
bash
shiva make:test my-fishingCreates the spec/ directory with a starter test file.
shiva make:ui
bash
cd resources/[shiva]/my-module
shiva make:uiScaffolds ui/ with a Vite + Vue starter.
Options: --framework vue|react|svelte