| ... | ... | @@ -1,29 +1,29 @@ |
| 1 | 1 | # Scripts |
| 2 | 2 | |
| 3 | | - `bun run dev` — Starts contracts, server, and web in `turbo watch` mode. |
| 4 | | - `bun run dev:server` — Starts just the WebSocket server (uses Bun TypeScript execution). |
| 5 | | - `bun run dev:web` — Starts just the Vite dev server for the web app. |
| 6 | | - Dev commands default `T3CODE_STATE_DIR` to `~/.t3/dev` to keep dev state isolated from desktop/prod state. |
| 3 | - `vp run dev` — Starts contracts, server, and web in watch mode. |
| 4 | - `vp run dev:server` — Starts just the WebSocket server. The server process runs on Bun (`@effect/platform-bun` + `BunPtyAdapter`), but task running uses `vp run`. |
| 5 | - `vp run dev:web` — Starts just the Vite dev server for the web app. |
| 6 | - Dev commands default `T3CODE_HOME` to `~/.t3` — the same shared home the desktop/production app uses. Override with `--home-dir` (see below) to keep dev state separate. |
| 7 | 7 | - Override server CLI-equivalent flags from root dev commands with `--`, for example: |
| 8 | | `bun run dev -- --base-dir ~/.t3-2` |
| 9 | | - `bun run start` — Runs the production server (serves built web app as static files). |
| 10 | | - `bun run build` — Builds contracts, web app, and server through Turbo. |
| 11 | | - `bun run typecheck` — Strict TypeScript checks for all packages. |
| 12 | | - `bun run test` — Runs workspace tests. |
| 13 | | - `bun run dist:desktop:artifact -- --platform <mac|linux|win> --target <target> --arch <arch>` — Builds a desktop artifact for a specific platform/target/arch. |
| 14 | | - `bun run dist:desktop:dmg` — Builds a shareable macOS `.dmg` into `./release`. |
| 15 | | - `bun run dist:desktop:dmg:x64` — Builds an Intel macOS `.dmg`. |
| 16 | | - `bun run dist:desktop:linux` — Builds a Linux AppImage into `./release`. |
| 17 | | - `bun run dist:desktop:win` — Builds a Windows NSIS installer into `./release`. |
| 8 | `vp run dev -- --home-dir ~/.t3-2` |
| 9 | - `vp run start` — Runs the production server (serves built web app as static files). |
| 10 | - `vp run build` — Builds contracts, web app, and server. |
| 11 | - `vp run typecheck` — Strict TypeScript checks for all packages. |
| 12 | - `vp run test` — Runs workspace tests. |
| 13 | - `vp run dist:desktop:artifact -- --platform <mac|linux|win> --target <target> --arch <arch>` — Builds a desktop artifact for a specific platform/target/arch. |
| 14 | - `vp run dist:desktop:dmg` — Builds a shareable macOS `.dmg` into `./release`. |
| 15 | - `vp run dist:desktop:dmg:x64` — Builds an Intel macOS `.dmg`. |
| 16 | - `vp run dist:desktop:linux` — Builds a Linux AppImage into `./release`. |
| 17 | - `vp run dist:desktop:win` — Builds a Windows NSIS installer into `./release`. |
| 18 | 18 | |
| 19 | 19 | ## Desktop `.dmg` packaging notes |
| 20 | 20 | |
| 21 | 21 | - Default build is unsigned/not notarized for local sharing. |
| 22 | | - The DMG build uses `assets/macos-icon-1024.png` as the production app icon source. |
| 22 | - The DMG build uses `assets/prod/black-macos-1024.png` as the production app icon source. |
| 23 | 23 | - Desktop production windows load the bundled UI from `t3code://app/index.html` (not a `127.0.0.1` document URL). |
| 24 | 24 | - Desktop packaging includes `apps/server/dist` (the `t3` backend) and starts it on loopback with an auth token for WebSocket/API traffic. |
| 25 | 25 | - Your tester can still open it on macOS by right-clicking the app and choosing **Open** on first launch. |
| 26 | | - To keep staging files for debugging package contents, run: `bun run dist:desktop:dmg -- --keep-stage` |
| 26 | - To keep staging files for debugging package contents, run: `vp run dist:desktop:dmg -- --keep-stage` |
| 27 | 27 | - To allow code-signing/notarization when configured in CI/secrets, add: `--signed`. |
| 28 | 28 | - Signed macOS builds also require `T3CODE_APPLE_TEAM_ID` and |
| 29 | 29 | `T3CODE_MACOS_PROVISIONING_PROFILE`. The passkey RP domain is derived from |
| ... | ... | @@ -38,8 +38,8 @@ |
| 38 | 38 | |
| 39 | 39 | Set `T3CODE_DEV_INSTANCE` to any value to deterministically shift all dev ports together. |
| 40 | 40 | |
| 41 | | - Default ports: server `3773`, web `5733` |
| 41 | - Default ports: server `13773`, web `5733` |
| 42 | 42 | - Shifted ports: `base + offset` (offset is hashed from `T3CODE_DEV_INSTANCE`) |
| 43 | | - Example: `T3CODE_DEV_INSTANCE=branch-a bun run dev:desktop` |
| 43 | - Example: `T3CODE_DEV_INSTANCE=branch-a vp run dev:desktop` |
| 44 | 44 | |
| 45 | 45 | If you want full control instead of hashing, set `T3CODE_PORT_OFFSET` to a numeric offset. |