Generic CLI for scaffolding and managing modular runtime applications.
Project description
RuntimeKit CLI
RuntimeKit CLI is a generic command-line tool for scaffolding and managing modular runtime applications.
It can generate modules, pages, stores, backend routes, descriptor wiring, dependency wiring, release commands, installer collection, and safe cleanup commands for a workspace that follows a modular runtime layout.
Install
From PyPI after publishing:
python -m pip install runtimekit-cli
From GitHub before publishing:
python -m pip install "runtimekit-cli @ git+https://github.com/Susheer/runtimekit-cli.git"
Configure
Run this once per machine or environment:
runtimekit config init --workspace /path/to/spec --name "My Runtime"
The configured name is only local CLI metadata. It does not need to be hardcoded into the package.
Show config:
runtimekit config show
Common Commands
runtimekit doctor
runtimekit add module APP.WorkOrders --menu-parent Operations
runtimekit add page APP.WorkOrders WorkOrderDetails
runtimekit add store APP.WorkOrders WorkOrdersStore
runtimekit add dependency APP.WorkOrders OTHER.SharedFeature
runtimekit add include OTHER.SharedFeature --app APP
runtimekit add theme --app APP
runtimekit prepare
runtimekit inspect runtime
runtimekit run browser --open
runtimekit run electron
runtimekit release make --target mac-dmg
runtimekit clean --target build --target installer --dry-run
runtimekit remove module APP.WorkOrders --dry-run
runtimekit remove theme --app APP --yes
Destructive commands require --yes unless --dry-run is used.
Design-Aware Scaffolding
runtimekit add module now creates a full starter module instead of a blank shell:
- Three visible pages in the same navigation group.
- A module-scoped frontend store with fake data for every generated page.
backend/module.js, route, and service files returning sample data.- Strict
module.jsonwith page-levelpageType,icon,menu, restore-state, keep-alive,frontend.entry, andbackend.routePrefix. - MUI/platform UI page templates using cards, metrics, status pills, and data tables.
runtimekit add page adds the new page under the module's existing navigation group by default,
refreshes sample data, and keeps the generated frontend module export aligned with module.json.
The CLI does not write deprecated manifest fields such as permissions, metadata,
backend.routes, backend.services, backend.initOrder, frontend.stores, or
frontend.slots. Runtime behavior belongs in frontend/module.js and
backend/module.js.
runtimekit add theme adds root-app theme resources for an external app. By default
it targets the root.app configured in local.properties; use --app APP to be
explicit. It writes styles/themeset.js, a companion CSS file, assets/, static/,
and wires themeSet, styles, assets, and static into the app
module-descriptor.json. The generated token set intentionally uses a visibly
different palette from the default runtime theme so stakeholders can see the
composition effect immediately.
runtimekit remove theme removes only external app theme wiring. The default
runtime/core theme cannot be edited or deleted by this CLI.
Release Artifacts
Release builds can collect generated installer files into a root-level installer folder:
runtimekit release make --target mac-dmg
The collected output defaults to:
installer/
Override it with:
runtimekit release make --target mac-dmg --installer-dir published-installers
Development
python -m unittest discover -s tests
PYTHONPYCACHEPREFIX=/tmp/runtimekit_pycache python -m py_compile runtimekit_cli/cli.py tests/test_cli.py
python -m build
Publish
The recommended publish flow is PyPI Trusted Publishing from GitHub Actions. Create a PyPI project for runtimekit-cli, configure a trusted publisher for this repository, then publish by creating a GitHub release.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file runtimekit_cli-0.3.1.tar.gz.
File metadata
- Download URL: runtimekit_cli-0.3.1.tar.gz
- Upload date:
- Size: 27.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61ca5591cac5e755059b523d1db4effefc5277775a2ddccf483413617f057acc
|
|
| MD5 |
51c3cba2fd6ac56e535ac1c292e383fc
|
|
| BLAKE2b-256 |
a40eb2848f8de043797832db9ad8b3bc1c78a1f872b26a36a2a6365a303baebb
|
Provenance
The following attestation bundles were made for runtimekit_cli-0.3.1.tar.gz:
Publisher:
publish.yml on Susheer/runtimekit-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
runtimekit_cli-0.3.1.tar.gz -
Subject digest:
61ca5591cac5e755059b523d1db4effefc5277775a2ddccf483413617f057acc - Sigstore transparency entry: 1454277151
- Sigstore integration time:
-
Permalink:
Susheer/runtimekit-cli@3652a5cf2d41fa36fa18ac0eb911ef330fccc823 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/Susheer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3652a5cf2d41fa36fa18ac0eb911ef330fccc823 -
Trigger Event:
release
-
Statement type:
File details
Details for the file runtimekit_cli-0.3.1-py3-none-any.whl.
File metadata
- Download URL: runtimekit_cli-0.3.1-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7be79cad5bee6e558eab2863612e3fe655a6302d9454a6fdc8cbe383986f8363
|
|
| MD5 |
ccb45e4cd89f31c8dca8d0f752b671f0
|
|
| BLAKE2b-256 |
93aaed3eb052fca14e5402ba83f133faf4b519b319eee09b51a9f3ccf4642bfe
|
Provenance
The following attestation bundles were made for runtimekit_cli-0.3.1-py3-none-any.whl:
Publisher:
publish.yml on Susheer/runtimekit-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
runtimekit_cli-0.3.1-py3-none-any.whl -
Subject digest:
7be79cad5bee6e558eab2863612e3fe655a6302d9454a6fdc8cbe383986f8363 - Sigstore transparency entry: 1454277245
- Sigstore integration time:
-
Permalink:
Susheer/runtimekit-cli@3652a5cf2d41fa36fa18ac0eb911ef330fccc823 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/Susheer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3652a5cf2d41fa36fa18ac0eb911ef330fccc823 -
Trigger Event:
release
-
Statement type: