Pause gate, /demo-status endpoint, and Case.dev integration docs

kveton added a public `/demo-status` endpoint and a frontend landing page that activates when `MIKE_DEMO_CASE_API_KEY` is set but `MIKE_DEMO_MODE` is off -- a clean way to pause the hosted demo without taking the whole app down. This PR also doubled as the README for the fork's Case.dev integration, laying out the full primitive map and BYOK escape hatches.

infrastructurebranding

The /demo-status endpoint (GET) returns four fields: enabled, hosted_demo_configured, disabled_landing, and budget_usd. The frontend reads it and swaps in a static paused-demo page when disabled_landing is true. The gate is inert on any fork or local install that doesn't have MIKE_DEMO_CASE_API_KEY configured, so merging this doesn't affect non-hosted deployments.

A second commit added an extensive Case.dev integration breakdown to the README. The "Choose Your Integration Depth" section lists five modes from full Case.dev through a Case-free fork, and the primitive map table documents every Case.dev service by wiring status (live, future, or not used). The adapter seams are named directly: caseClient.ts, storage.ts, llm/index.ts, chatTools.ts, caseMatters.ts, and the routes layer.

Also in this PR: app metadata was refreshed for launch (title updated to "MikeOSS Case.dev Demo", description updated), and the .env.example got a comment documenting the MIKE_DEMO_GLOBAL_BUDGET_USD emergency cap for abuse control.

So what Worth a look if you're evaluating this fork as a base for a hosted deployment. The pause mechanism is practical. The integration docs and primitive map are the clearest write-up of how deeply Case.dev is embedded, which answers the "can I swap it out" question before you touch any code.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

2 commits from CaseMark/mikeoss-casedotdev, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
f7126a1b Polish public demo launch kveton 2026-05-04 ↗ GitHub
3bae2c9e Document Case.dev integration options kveton 2026-05-04 ↗ GitHub

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-285.md from inside the repo you want the changes in.

⬇ Download capture-thread-285.md