This commit is contained in:
Ian Gulliver
2026-10-16 13:00:38 -07:00
parent 03e2fe8364
commit 51dfbf78a0
4 changed files with 24 additions and 2 deletions
+1 -1
View File
@@ -12,7 +12,7 @@
- `internal/codex`: the `codex app-server` JSON-RPC client, with types generated from the CLI's schema by `go generate ./internal/codex` (see `docs/codex-protocol.md`). - `internal/codex`: the `codex app-server` JSON-RPC client, with types generated from the CLI's schema by `go generate ./internal/codex` (see `docs/codex-protocol.md`).
- `internal/tailscale`: `tailscale serve` for task previews (see "Previews"). - `internal/tailscale`: `tailscale serve` for task previews (see "Previews").
- `internal/workflow`: validating workflow definitions and reading and writing their YAML files (see "Workflows"). - `internal/workflow`: validating workflow definitions and reading and writing their YAML files (see "Workflows").
- `web/`: the SPA, frameworkless TypeScript compiled file-by-file to ES modules (no bundler). `web/src/*.ts` is the source; `web/src/api.gen.ts` holds types generated from `api/openapi.yaml`, and `web/src/api.ts` is the typed client over them. `go generate ./web` runs `npm ci`, regenerates the types and compiles `web/dist/`, which is committed so `go install` needs no Node. The binary embeds `index.html`, `style.css`, `dist/`, `src/` (for source maps), `fonts/` and `vendor/` (Mermaid, see "Inbox"; xterm.js, see "Terminals"). `byre serve --dev` serves `./web` from disk instead (run from the repo root); pair it with `npm --prefix web exec tsc -- --watch`. - `web/`: the SPA, frameworkless TypeScript compiled file-by-file to ES modules (no bundler). `web/src/*.ts` is the source; `web/src/api.gen.ts` holds types generated from `api/openapi.yaml`, and `web/src/api.ts` is the typed client over them. `go generate ./web` runs `npm ci`, regenerates the types and compiles `web/dist/`, which is committed so `go install` needs no Node. The binary embeds `index.html`, `style.css`, `favicon.svg` (a lead dot in the accent colour with spokes to five task-coloured dots; its colours are copies of the `web/style.css` palette, switching with the light/dark scheme), `dist/`, `src/` (for source maps), `fonts/` and `vendor/` (Mermaid, see "Inbox"; xterm.js, see "Terminals"). `byre serve --dev` serves `./web` from disk instead (run from the repo root); pair it with `npm --prefix web exec tsc -- --watch`.
## Data ## Data
+1 -1
View File
@@ -5,5 +5,5 @@ import "embed"
//go:generate npm ci --silent //go:generate npm ci --silent
//go:generate npm run --silent generate //go:generate npm run --silent generate
//go:embed index.html style.css dist src fonts vendor //go:embed index.html style.css favicon.svg dist src fonts vendor
var FS embed.FS var FS embed.FS
+21
View File
@@ -0,0 +1,21 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<style>
line { stroke: #4a5260; stroke-width: 1.5; }
.l { fill: #1a45bd; } .a { fill: #a4273f; } .b { fill: #9f3501; } .c { fill: #376e00; } .d { fill: #5849b2; } .e { fill: #046a77; }
@media (prefers-color-scheme: dark) {
line { stroke: #a9b1bc; }
.l { fill: #8ab4ff; } .a { fill: #fe9fa6; } .b { fill: #ffa383; } .c { fill: #99d079; } .d { fill: #b6b4fe; } .e { fill: #2fd4ec; }
}
</style>
<line x1="16" y1="16" x2="16" y2="4"/>
<line x1="16" y1="16" x2="27.4" y2="12.3"/>
<line x1="16" y1="16" x2="23.1" y2="25.7"/>
<line x1="16" y1="16" x2="8.9" y2="25.7"/>
<line x1="16" y1="16" x2="4.6" y2="12.3"/>
<circle class="l" cx="16" cy="16" r="6"/>
<circle class="a" cx="16" cy="4" r="3.5"/>
<circle class="b" cx="27.4" cy="12.3" r="3.5"/>
<circle class="c" cx="23.1" cy="25.7" r="3.5"/>
<circle class="d" cx="8.9" cy="25.7" r="3.5"/>
<circle class="e" cx="4.6" cy="12.3" r="3.5"/>
</svg>

After

Width:  |  Height:  |  Size: 952 B

+1
View File
@@ -4,6 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>byre</title> <title>byre</title>
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<link rel="stylesheet" href="/style.css"> <link rel="stylesheet" href="/style.css">
<script type="module" src="/dist/app.js"></script> <script type="module" src="/dist/app.js"></script>
</head> </head>