---
id: w5/m1/t003
title: Rebrand identifiers (package name, README, CLAUDE.md, env, titles)
worker: worker5
status: done
estimate: 30m
depends_on: [w5/m1/t002]
---

## Objective

Replace every remaining beancount-branded identifier in `dashboard/` with bex naming, so the app reads as a bex project, not a leftover fork.

## Context

- `dashboard/package.json` — `name: "beancount-dashboard"` → `name: "dashboard"` (or `@bex/dashboard`, match whatever convention `operator/`'s `go.mod`-equivalent naming suggests — no strong existing JS convention in this repo yet, pick the simple one).
- `dashboard/README.md` — currently describes the beancount app; rewrite to describe this as bex's dashboard scaffold (stack, `yarn dev`, what it's for — point at `docs/ADR006-bex-api.md` for the GraphQL surface it'll eventually consume).
- `dashboard/CLAUDE.md` — rewrite or trim to whatever's left of the shell after t002; drop beancount-specific conventions.
- `dashboard/.env.example` — beancount-specific env vars (API endpoints, Plaid/OAuth keys, etc. tied to deleted features) should go; keep only what the remaining shell actually reads.
- Page titles/meta: check `dashboard/index.html` or route `head()` exports (TanStack Start) for `<title>`/meta referencing beancount.
- Any logo/favicon assets under `dashboard/public/` or `dashboard/src/assets/` referencing beancount branding — replace with a placeholder or bex-neutral asset (don't invest in real design here, this is scaffold work).
- Root `CLAUDE.md`'s repo map (`/Volumes/nvme4tbfish/projects/bex5/CLAUDE.md`) should get a one-line entry for `dashboard/` alongside `operator/`, `infra/`, `deploy/`, `examples/`, `scripts/`, `docs/`.

## Steps

1. Update `dashboard/package.json` `name`/`description`.
2. Rewrite `dashboard/README.md` and trim `dashboard/CLAUDE.md`.
3. Prune `dashboard/.env.example` to only vars the surviving shell reads.
4. Fix page `<title>`/meta and any logo/favicon references.
5. Add a `dashboard/` line to the root `CLAUDE.md` repo map.
6. Re-run `grep -ril beancount dashboard --exclude-dir=node_modules` — should return nothing (except maybe `yarn.lock`/lockfile entries for packages literally named with "beancount", which don't exist here, so it should be a clean zero).

## Files

- `dashboard/package.json`, `dashboard/README.md`, `dashboard/CLAUDE.md`, `dashboard/.env.example`
- `dashboard/index.html` or route `head()` exports
- `dashboard/public/`, `dashboard/src/assets/`
- `/Volumes/nvme4tbfish/projects/bex5/CLAUDE.md` (repo map line)

## Acceptance criteria

- [ ] `grep -ril beancount dashboard --exclude-dir=node_modules` returns nothing.
- [ ] `dashboard/package.json` name reflects bex, not beancount.
- [ ] Root `CLAUDE.md` repo map lists `dashboard/`.

## Out of scope

- Real visual design/branding polish — placeholder is fine, this is a scaffold.
