Go Beyond Output Hub
A visual homepage dashboard for all Claude-published outputs across Go Beyond — the team’s equivalent of homepage.heredragons.com (gethomepage.dev), but purpose-built for employee AI output discovery rather than self-hosted service monitoring.
The Problem
The current portal.gobeyond.asia (Go Beyond-portal.damien-3c4.workers.dev) serves a basic HTML table of employee outputs. It works, but it has no visual identity, no grouping, no stats, and no personality. When employees publish dashboards, reports, and data exports, they deserve a place that feels like a real product.
The Reference: homepage.heredragons.com
gethomepage.dev is a Next.js Docker app that shows:
- Top bar: Live resource widgets (CPU, RAM, disk) + machine name + search
- Grouped service tiles: Icon + service name + description + live status ping
- Dark/light mode, responsive, PWA-capable
- Bookmarks section for quick links
The Go Beyond Output Hub takes the same visual language — cards, groups, widgets, search — and applies it to a feed of published Claude outputs pulled live from our D1 database and R2 files.
Design
Top bar widgets (replacing system resources)
- Total outputs published (live count from D1)
- Outputs this week (new since Monday)
- Most active employee (by output count)
- Last published (title + time ago)
Main grid: Output Cards
Each published output renders as a card with:
- File type icon (dashboard 📊 / report 📄 / data 🗃️ / file 📁)
- Title (clickable — opens the output)
- Published by (employee name)
- Date + time ago
- Type badge (colour-coded)
- Description (if provided)
Grouping options (toggle)
- By employee (default)
- By type (dashboards / reports / data / files)
- By recency (flat feed, newest first)
- By project/tag (future — when tagging is added)
Search
Instant client-side filter across title, description, and employee name.
Visual style
- Dark mode default (matching homepage.heredragons.com aesthetic)
- Cloudflare Workers — no Docker, no server
- Tailwind CSS (inline, no build step)
- Go Beyond brand colours
Tech Stack
| Layer | Choice | Reason |
|---|---|---|
| Hosting | Cloudflare Workers (replaces current portal Worker) | Already deployed, free |
| Database | D1 Go Beyond-portal-db | Already provisioned with outputs table |
| File storage | R2 Go Beyond-files | Already provisioned |
| Auth | Cloudflare Access (M365 Entra ID) | Already configured |
| Frontend | Self-contained HTML + Tailwind CDN | No build step, deploys in one file |
| Data fetch | Worker API (/api/outputs) → JSON | Already built |
What Needs Building
-
New
public/index.html— replaces the current bare-bones portal homepage. A full single-page app that:- Fetches
/api/outputson load - Renders the card grid
- Implements search, grouping toggle, and dark mode
- Shows the top-bar stat widgets
- Fetches
-
/api/statsendpoint — new route in the portal Worker returning:{ total, thisWeek, mostActive, lastPublished }
-
Per-employee colour assignment — deterministic colour from employee name hash (for card accent colours, like gethomepage’s service group colours)
-
Favicon + title — “Go Beyond Hub” or similar
-
PWA manifest — so employees can pin it to their desktop/phone
What Already Exists (Don’t Rebuild)
portal/src/index.ts— main Worker router ✅portal/src/routes/api.ts—/api/outputsPOST + GET ✅portal/src/routes/outputs.ts—/o/:slugfile serving ✅portal/src/utils/auth.ts— Entra ID JWT parsing ✅portal/src/utils/storage.ts— D1 helpers ✅- D1 schema with
outputstable ✅ - R2
Go Beyond-filesbucket ✅ - Cloudflare Access policy ✅
Handoff Notes for Claude Code
- Project files live at
C:\gbcf\portal\ - Deploy with:
$env:CLOUDFLARE_API_TOKEN = "..."; cd C:\gbcf\portal; wrangler deploy - The token needs rotating — create a fresh one at Cloudflare → My Profile → API Tokens → Edit Cloudflare Workers template
- The Worker is already live at
https://Go Beyond-portal.damien-3c4.workers.dev - Wrangler.toml IDs: D1
c23350ee-0f0e-4973-9e44-71493186b9ee, KV6461b5d286eb49978157c556bed40d85 - Look at
homepage.heredragons.com(gethomepage.dev) for visual reference — it’s the inspiration - The homepage should feel like that: dark, clean, card-based, with live stats at the top
Deployment History
| Date | Action | Notes |
|---|---|---|
| 2026-05-17 | Built | public/index.html created; vault link added; wrangler.toml updated |
| 2026-05-19 | Deployed | wrangler deploy run via Cowork session; Version ID 074b9bef-6276-4d19-85a7-ca67ac75d6c1 |
Success Criteria
- Visiting the portal URL shows a visual dashboard, not an HTML table
- All published outputs appear as cards with icon, title, author, date, type
- Search filters cards in real time
- Top bar shows 4 live stats pulled from D1
- Dark mode works
- Publishing a new output via the modal still works
- Individual output URLs (
/o/slug) still serve files correctly