- TypeScript 91.9%
- JavaScript 7.4%
- CSS 0.5%
- HTML 0.2%
| apps | ||
| packages | ||
| scripts | ||
| specs | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.json | ||
| bun.lock | ||
| eslint.config.js | ||
| package.json | ||
| README.md | ||
| specs.md | ||
| tsconfig.base.json | ||
| tsconfig.json | ||
VTP
Value Transmission Protocol prototype monorepo.
Prerequisites
Quick start
Run from the monorepo root:
bun install
bun run start
The root start script installs dependencies, builds the explorer and browser extension wallet, prepares a local mining reward wallet/config if needed, then starts the node and explorer dev server. Open the explorer at the Vite URL printed by the command.
Workspaces
| Path | Description |
|---|---|
packages/core/ |
Shared VTP protocol, crypto, transaction, state, and wallet helpers. |
packages/wallet-kit/ |
Shared wallet domain, RPC, storage, amount, and transaction helpers. |
packages/wallet-solid/ |
Shared Solid.js wallet/account stores for wallet UIs. |
apps/miner-and-node/ |
VTP miner, node, chain storage, SQLite index, and CLI wallet helper. |
apps/explorer/ |
Solid.js VTP Explorer. |
apps/wallet/ |
WXT + Solid.js browser extension wallet. |
apps/mobile-wallet/ |
NativeScript + Solid.js mobile wallet sharing wallet logic/stores. |
scripts/ |
Root orchestration scripts. |
The root package intentionally exposes one script only: bun run start. Other commands are package-local.
Runtime data and secrets
Node runtime data and local private-key wallet files live under the miner-and-node workspace:
apps/miner-and-node/.vtp/
apps/miner-and-node/wallets/
These directories contain production data and private keys. They are ignored by Git and should not be deleted, regenerated, or rewritten unless you intentionally operate the node/wallet tooling.
Common commands
Run workspace commands from the monorepo root with bun run --cwd <workspace> <script>.
| Purpose | Command |
|---|---|
| Start root orchestrator | bun run start |
| Run node | bun run --cwd apps/miner-and-node node |
| Initialize/update node config | bun run --cwd apps/miner-and-node node:init-config |
| Use wallet CLI helper | bun run --cwd apps/miner-and-node wallet:cli |
| Start explorer dev server | bun run --cwd apps/explorer dev |
| Build explorer | bun run --cwd apps/explorer build |
| Start extension wallet dev server | bun run --cwd apps/wallet dev |
| Build extension wallet | bun run --cwd apps/wallet build |
| Run NativeScript mobile wallet | bun run --cwd apps/mobile-wallet android |
| Run NativeScript mobile wallet iOS | bun run --cwd apps/mobile-wallet ios |
| Test core package | bun run --cwd packages/core test |
| Test miner/node workspace | bun run --cwd apps/miner-and-node test |
More documentation
- Protocol specification:
specs/README.md - Miner/node setup, mining, peer sync, TLS, chain storage, and wallet CLI:
apps/miner-and-node/README.md - Explorer development:
apps/explorer/README.md - Browser extension wallet development:
apps/wallet/README.md - NativeScript mobile wallet development:
apps/mobile-wallet/README.md - Core package commands:
packages/core/README.md