| 1 | # `@fixtures/octane` |
| 2 | |
| 3 | An [OctaneJS](https://octanejs.dev) fullstack app driven by the e2e harness |
| 4 | through `@alchemy.run/frontend-frameworks/octane`. |
| 5 | |
| 6 | The project is a stock Octane setup: `octane()` in `vite.config.ts`, routes + |
| 7 | `adapter: cloudflare()` in `octane.config.ts`. The integration adds nothing to |
| 8 | the app — `e2e build` runs the project's own `vite build` (client bundle → |
| 9 | `ssr: true` server sub-build → the adapter emitting `dist/server/worker.js`) |
| 10 | and maps the on-disk output onto the `BuildOutput` contract. |
| 11 | |
| 12 | - `e2e build && e2e preview` / Playwright `live` — the adapter-emitted worker |
| 13 | under miniflare, asset-first with SSR on miss, `nodejs_compat`. |
| 14 | - `e2e dev` / Playwright `dev` — Octane's own Vite dev server (in-process SSR |
| 15 | middleware). No `context.platform` in dev (upstream limitation), so the |
| 16 | binding assertions are live-only. |
| 17 | |
| 18 | Run the smoke tests with `bun run test` (from this directory). |