Create Application
The create command creates a local ZeyOS application by setting up the application manifest and default directory structure.
Bash
zeysdk create <APP_ID> [options]
Parameters
| Parameter | Description | Required | Example |
|---|---|---|---|
APP_ID | Application ID | Yes | my-app |
Options
| Option | Description | Required | Example |
|---|---|---|---|
--name <name> | Display name; prompted when omitted | No | --name="My App" |
--vendor <vendor> | Vendor name | No | --vendor="ACME Inc" |
--verbose | Show detailed output | No | --verbose |
Process
-
Input Validation
- Requires an application ID
- Uses the display name from
--nameor prompts for one - Uses the vendor name when provided
-
Project Scaffolding
- Refuses to run inside an existing app tree
- Refuses to overwrite any existing target path
- Creates the application directory named by
APP_ID - Creates standard asset and configuration folders
- Writes the initial
zeyos.app.jsonmanifest
-
Initial Files
- Creates default settings files
- Creates an empty
.zeysdk/sync.json - Creates an empty project
README.md - Leaves the app ready for asset management and linking
Creates a new ZeyOS application with the following structure:
Text
my-app/
|-- .zeysdk/
| `-- sync.json
|-- assets/
|-- resources/
|-- services/
|-- settings/
| |-- defaultsettings.json
| |-- settingscode.ixml
| `-- usersettingscode.ixml
|-- weblets/
|-- README.md
`-- zeyos.app.json
Examples
Bash
zeysdk create my-app --name="My App"
zeysdk create customer-tools --name="Customer Tools" --vendor="ACME Inc"
zeysdk create reporting --name="Reporting" --verbose
Error Handling
| Error | Description | Resolution |
|---|---|---|
| Missing app ID | Required application ID was not provided | Pass APP_ID |
| Missing name | Display name was not provided | Pass --name or enter one when prompted |
| Invalid app ID | ID has unsupported characters or punctuation at either end | Use letters, numbers, dots, underscores, and hyphens, beginning and ending with a letter or number |
| Nested app | Command was run inside another app | Move to a parent workspace directory |
| Directory exists | Target directory already exists | Choose another APP_ID or directory |
| Write error | Files could not be created | Check local permissions |
Notes
createonly creates the local project structure- If scaffolding fails after the directory is created, the incomplete target is removed
- Use
zeysdk linkto connect the app to an instance - Use
zeysdk addto register new assets after creation - Keep
APP_IDstable once the app is shared or deployed
Best Practices
- Use lowercase, descriptive application IDs
- Set
--vendorwhen the app belongs to a company or team - Commit the generated project before making large changes
- Link and push only after reviewing the generated manifest