← Dashboard
Infrastructure + Operations

The Manor System

Setup, daily workflows, and evolution roadmap

Evolution roadmap

Beginner (now)
GitHub + Claude Code
Static HTML files. Manifest and link registry as markdown. GitHub Pages hosting. Claude Code for edits. GitHub Desktop for safety. Claude chat with skills for project creation.
Intermediate (months 2-4)
Data layer + repo maturity
Supabase database replaces markdown manifest. Dashboard reads from API. Content stays as markdown, rendered at load time. Separate commits for data vs UI. Multiple views share one data source.
Advanced (months 4-8+)
Full application
Single deployed app with domain-specific routes. Route-level auth (public vs private). Admin panel for data entry. Raspberry Pi, health tracker, and future systems all consume the same backend.
Why start at Beginner: It works today with zero coding. You get permanent URLs, version history, rollback safety, and 90% token reduction on dashboard updates. Each tier solves problems you'll discover in the tier before it. Skip ahead and you'll build solutions to problems you haven't experienced yet.

Quick reference

Who does what

TaskToolWhy
Plan a projectClaude chatSkills + expert panels + widgets
Produce a new artifactClaude chatSkills produce the HTML file
Update manifest + registryClaude chatReads from Project Knowledge
Edit the dashboardClaude CodeSurgical edits, pushed to repo
Edit a project guideClaude CodeTargeted changes, no dashboard risk
Rename or move filesClaude CodeBatch operations
Upload new filesGitHub DesktopDrag, commit, push
Revert a bad changeGitHub DesktopRight-click, revert. Zero tokens.
Sync repo to ProjectProject settingsClick Sync now

URL pattern

Dashboardthekingofconsulting.github.io/manor/
Compendiumthekingofconsulting.github.io/manor/compendium.html
Any artifactthekingofconsulting.github.io/manor/[folder]/[filename].html
What about separate commits for data vs UI?

Your coworker is right. If you commit a manifest update and a dashboard style change together, reverting the style change also rolls back the data. The practical fix: when using Workflow B, do two separate commits. First commit the manifest and registry changes. Then paste the Claude Code instructions and let it commit separately. Two commits means two independent revert targets.

Why not separate repos per domain?

Shared reference files (manifest, registry, tool inventory) would need to be duplicated. Skills can't cross-reference projects in different repos. One repo with domain folders gives you all the organization with none of the sync headaches.

Can I password-protect the Compendium?

GitHub Pages has no built-in auth. Options: StatiCrypt (encrypts the HTML file with a password prompt), Cloudflare Access (email-based login, free tier), or Netlify with password protection ($15/month). For health and finance data, Cloudflare Access is the most robust free option.

About this tier 1. What you have Setup (one-time) 2. GitHub account + repo 3. GitHub Pages 4. GitHub Desktop 5. Organize artifacts 6. Claude Code 7. Claude Project setup Daily workflows 8. Creating a new project guide 9. Connecting a guide to the dashboard 10. Fixing errors or small updates

Manor - Beginner (current)

Where you are now. Claude chat with skills produces HTML artifacts. GitHub repo hosts everything. Claude Code makes surgical edits. GitHub Desktop handles commits and rollback.

Beginner What you have Active
Architecture

Static HTML files in a GitHub repo. Project manifest and link registry as markdown files in reference/. GitHub Pages serves everything. One Claude Project with skills, repo synced to Project Knowledge.

Strengths

Zero coding required. Version history on every file. Free hosting. Skills handle all project creation logic. Manifest replaces full-dashboard uploads, cutting token consumption by 90%.

Limitations you'll discover

Reverting a UI change also reverts data changes unless you commit separately. No password protection on sensitive pages. Each new dashboard or display needs its own HTML file with no shared data source. Token cost is low but not zero since HTML artifacts are larger than markdown equivalents.

Run Beginner for 4-6 weeks. Track every friction point: reverts that lost data, changes that needed to propagate to two places, artifacts that were expensive to regenerate. Those friction points tell you exactly which Intermediate features you actually need.

Infrastructure setup

Everything below is one-time setup. Once done, you never repeat it.

Everything below is one-time setup. Once done, you never repeat it.

Step 1 GitHub account + repository Done
Account

Sign up at github.com. Upgrade to GitHub Pro ($4/month) for private repo Pages.

Repository

Create a private repo named manor. Add a README. Skip .gitignore and license.

Upload dashboard

Rename your Manor Command Center HTML to index.html and upload it. This is the homepage.

Step 2 Turn on GitHub Pages Done
Enable

Settings > Pages > Deploy from branch > main > / (root) > Save.

Verify

Wait 90 seconds, then visit your URL:

https://thekingofconsulting.github.io/manor/
Step 3 Install GitHub Desktop Done
Install + clone

Download from desktop.github.com. Sign in. Clone your manor repo to your computer. This creates a regular folder you can drag files into.

Step 4 Organize artifacts into folders Done
manor/
├── index.html ← Manor Command Center
├── compendium.html ← Personal Compendium (when ready)
├── home/ ← home & garden artifacts
├── finance/ ← finance planning artifacts
├── career/ ← GTM, advisory, speaking
├── personal/ ← health, fitness, life goals
└── reference/ ← manifest, link registry, tool inventory
File naming rule: Lowercase, hyphens instead of spaces, no parentheses or brackets. fire-pit-build-guide.html not Fire Pit Guide (1).html.
Step 5 Install Claude Code Done
Install

Download the Claude Code desktop app from claude.ai/code. Requires Git for Windows (install from git-scm.com first). Sign in with your Anthropic account.

Navigate

Open Claude Code. Navigate to your manor folder. All edits and pushes happen from here.

Key rule for Claude Code prompts: Be surgical. One change per prompt. Tell it exactly what to find and exactly what to replace. Add "push directly to main, do not create a separate branch" to every prompt. General prompts like "fix the links" give it too much latitude.
Step 6 Claude Project setup Done
One project for everything

All Manor work lives in one Claude Project. Skills cost tokens only when read, not by existing. Use separate chats per domain. The chat is your unit of focus; the project is your unit of infrastructure.

Connect GitHub repo

In Project settings, connect your manor repo via GitHub integration. Select reference/project-manifest.md and reference/link-registry.md. These are available in every chat without uploading.

Upload project instructions

Upload manor-project-instructions.md to Project Knowledge. This tells Claude the architecture, workflow rules, and what it should and shouldn't do.

Install the updater skill

Install claude-code-manor-updater via Customize > Skills. This replaces the old Dashboard Updater for the new workflow.

Beginner daily workflows

Claude chat (with skills)
Claude Code (edits + pushes)
GitHub Desktop (commit + safety)
Project settings (sync)

Workflow A: Creating a new project guide

Claude chat
Open a chat in your Manor project. Run the relevant skill (Project Kickoff, Building Planner, Finance Planner, DIY Build Guide, etc.)
Claude chat
Work through the skill flow. Answer questions, make decisions. Claude produces the artifact as an HTML file.
Claude chat
Download the artifact. Rename to lowercase-hyphenated format before saving.
Example: fire-pit-build-guide.html (not "Fire Pit Guide (1).html")
GitHub Desktop
Drop the file into the correct domain folder (home/, finance/, career/, personal/). Commit and push.
File is now live at thekingofconsulting.github.io/manor/[folder]/[filename].html
Claude chat
Tell Claude to add the new file to the link registry and update the manifest. Download both updated files.
GitHub Desktop
Replace manifest and registry in reference/. Commit and push.
Project settings
Click Sync now so the next chat sees the updated manifest and registry.

Workflow B: Connecting a guide to the dashboard

When to use: After creating a new guide, or when multiple projects have had activity and the dashboard needs to catch up.
Claude chat
Run the Claude Code Manor Updater skill. Say "update my dashboard" or "sync my dashboard". Choose Quick Sync or Review First.
Claude chat
The skill produces three outputs: updated manifest, updated link registry, and a block of Claude Code edit instructions for the dashboard HTML.
GitHub Desktop
Download updated manifest and registry. Replace in reference/. Commit and push.
Claude Code
Paste the edit instructions block. Claude Code makes targeted changes to index.html, commits, and pushes to main.
Adds link-out buttons, updates status badges, changes next actions. Nothing else.
Project settings
Click Sync now so the next chat sees the updated manifest.

Workflow C: Fixing errors or small updates

Key rule: One change per prompt. Exact find, exact replace. "Push directly to main, do not create a separate branch."
Claude Code
Open Claude Code in your manor folder. Give a surgical prompt describing exactly what to change.
Example: "In index.html, change the shed status badge from Active to Developed. Change nothing else. Push directly to main."
Claude Code
Claude Code makes the edit, commits, and pushes. Live in 90 seconds.
GitHub Desktop
If it broke something: History > right-click the bad commit > Revert changes in commit > Push. Fixed in 10 seconds, zero tokens.
Common Claude Code prompts
Fix a link"Find the link that points to [wrong URL] and replace it with [correct URL]. Change nothing else."
Update status"Change the status badge for [project] from [old] to [new]. Change nothing else."
Update next action"In the [project] card, change the card-next text from [old] to [new]. Change nothing else."
Edit a guide"In home/[filename].html, change [specific text] to [new text]. Change nothing else."
Rename a file"Rename home/[old].html to home/[new].html. Commit and push to main."
About this tier 1. Architecture and what changes Migration from Beginner 2. Set up Supabase 3. Design the database schema 4. Connect dashboard to Supabase 5. Convert guides to markdown 6. Update the Manor Updater skill 7. Connect additional displays Daily workflows 8. Create a guide / Update status / Fix errors

Manor - Intermediate (months 2-4)

The manifest moves from a markdown file to a hosted database. The dashboard becomes a view that reads from the database instead of a static HTML file with hardcoded values. Content moves from HTML to markdown with a rendering layer.

Intermediate Data layer separation
What changes

Project data (statuses, phases, next actions, artifact URLs) moves to Supabase. The dashboard shell stays in GitHub but reads data from the database at load time. You can revert the dashboard UI without losing project data, and vice versa.

Architecture
Intermediate architecture

Data layer (Supabase, free tier)
├── projects ← name, status, phase, next action, domain, area
├── artifacts ← project ID, filename, URL, date created
├── tools ← tool name, status (owned/wanted), category
└── API ← auto-generated REST endpoints from Supabase

Content layer (GitHub repo)
├── Markdown guides ← project guides as .md files, not HTML
├── Rendering templates ← converts markdown to visual output at load time
└── Dashboard shell ← nav, layout, styling (queries Supabase for data)

Display layer
├── Manor Command Center ← reads from Supabase, hosted on GitHub Pages
├── Personal Compendium ← reads from same database
└── Raspberry Pi calendar ← any device queries the same API
What this solves
ProblemBeginner workaroundIntermediate solution
Reverting UI also reverts dataSeparate commits manuallyData lives in Supabase, UI lives in the repo. Independent rollback.
Multiple dashboards need same dataShared reference/ folderAll views query one database. Update once, reflected everywhere.
HTML artifacts consume more tokensUse the manifest instead of HTMLContent stored as markdown. Rendering layer converts to visual output.
New systems need project dataNot possible without manual syncAny device with internet can query the Supabase API.
Database options

Evaluate when you're ready, not now:

CriteriaSupabaseFirebaseVercel KV
Free tierYes (500MB, 50k API calls/month)Yes (1GB, 50k reads/day)Yes (256MB, 30k requests/month)
Ease of setupModerate (SQL, needs schema)Easy (JSON, no schema)Easy (key-value, simplest)
Query powerFull SQL (most powerful)Limited queriesKey-value only
Auth built inYes (row-level security)Yes (Firebase Auth)No (needs separate auth)
Best for ManorRecommended. Relational data, auth, free tier fits the use case.Good alternative if SQL feels intimidating.Too simple for multi-domain data.

Migration: Beginner to Intermediate

When your friction log tells you it's time, follow these steps in order. Each step is independently useful. You can stop at any point and still have a working system.

Step 1 Set up Supabase
Create account

Go to supabase.com, sign up with your GitHub account (one click since you already have one). Create a new project called "manor". Choose the free tier. Pick a region close to you (US East).

Save your credentials

Supabase gives you a project URL and an API key. Save both somewhere secure. These are how your dashboard and Claude Code will talk to the database.

Step 2 Design the database schema
Projects table

Open the Supabase table editor (it looks like a spreadsheet). Create a table called projects with columns: name, domain, area, status, phase, next_action, description, artifact_url. This replaces your project-manifest.md.

Artifacts table

Create a table called artifacts with columns: project_name, filename, folder, github_url, date_created. This replaces your link-registry.md.

Tools table

Create a table called tools with columns: name, category, status (owned/wanted/wishlist), notes, priority. This replaces your tool inventory markdown.

Import existing data

Export your current manifest and link registry as CSV (Claude can do this). Import the CSVs into the Supabase tables using the table editor's import function. Your data is now in the database.

Step 3 Connect the dashboard to Supabase
Add the Supabase client

Have Claude Code add a small JavaScript block to index.html that imports the Supabase client library and connects using your project URL and API key. This is roughly 10 lines of code.

Replace hardcoded data with queries

Have Claude Code replace the hardcoded project cards in the dashboard with JavaScript that queries the projects table and renders cards dynamically. The dashboard shell (nav, layout, styling) stays the same. Only the data source changes.

Test

Open the dashboard. It should look identical to before but now reads from Supabase. Change a project status in the Supabase table editor and refresh the dashboard. It should update. If it does, the connection works.

Step 4 Convert guides from HTML to markdown
Convert existing guides

Have Claude Code convert each HTML guide in your repo to a markdown file. The content stays the same, just the format changes. Keep the HTML versions as backup until you've verified the markdown versions render correctly.

Add a markdown renderer

Have Claude Code add a rendering layer to your dashboard that converts markdown to styled HTML at load time using a library like marked.js. Your Manor brand CSS applies on top of the rendered output.

Update skills

Update your Claude chat skills to produce markdown guides instead of HTML. This cuts token consumption on guide creation by 30-40%.

Step 5 Update the Manor Updater skill
Switch from manifest to API

Update the Claude Code Manor Updater skill so that instead of producing updated markdown files, it produces Supabase API calls that update the database directly. Claude Code runs the API calls. No more downloading and replacing manifest files.

Remove the manifest dependency

Once the dashboard reads from Supabase and the updater writes to Supabase, the project-manifest.md and link-registry.md files become redundant. Keep them in the repo as a human-readable backup, but they're no longer the source of truth. The database is.

Step 6 Connect additional displays
Personal Compendium

Point the Compendium at the same Supabase project. It reads from the tools table for inventory, from a new health table for biomarkers, and from the projects table for status. One data update, two dashboards reflect it.

Raspberry Pi or other devices

Any device that can make an HTTP request can query the Supabase API. A Raspberry Pi running a simple Python or JavaScript script can pull project data and display it on a screen, a calendar, or an e-ink display.

Checkpoint: At the end of Intermediate, your data lives in Supabase, your content is markdown, your dashboard reads from the API, and multiple displays can share the same data. You've eliminated the revert problem, the multi-dashboard sync problem, and the token-heavy HTML problem. Run this for 4-8 weeks before considering Advanced.

Intermediate daily workflows

Claude chat (with skills)
Claude Code
Supabase
GitHub Desktop
Project settings

Workflow A: Creating a new project guide

Claude chat
Open a chat in your Manor project. Run the relevant skill. Work through the flow. Claude produces the artifact as a markdown file (not HTML).
Claude chat
Download the markdown guide. Rename to lowercase-hyphenated format.
Example: fire-pit-build-guide.md (not .html)
GitHub Desktop
Drop the markdown file into the correct domain folder. Commit and push.
The rendering layer converts it to styled HTML at load time. No manual HTML authoring.
Claude Code
Tell Claude Code to add the new artifact to the Supabase artifacts table with the project name, filename, and URL.
One API call. No manifest file to download and replace.
Supabase
The dashboard auto-reflects the new guide on next page load. No sync button, no manual wiring. The database is the source of truth.

Workflow B: Updating project status

Claude chat
Run the Manor Updater skill. It scans recent chats and produces a list of Supabase update commands instead of file edits.
Claude Code
Paste the update commands into Claude Code. It executes them against the Supabase API. Project statuses, phases, and next actions update in the database.
Supabase
Dashboard reflects changes on next load. No HTML editing. No commit. No risk of breaking the nav.
What changed from Beginner: No more downloading and replacing manifest files. No more Claude Code editing index.html directly. Data updates go to Supabase via API. UI updates (styling, layout) still go through Claude Code + GitHub Desktop, but they're independent of data. Revert one without losing the other.

Workflow C: Fixing errors or small updates

Supabase table editor
For data fixes (wrong status, typo in next action): open Supabase's table editor, find the row, edit the cell directly. It's a spreadsheet. No Claude needed. Zero tokens.
Claude Code
For UI fixes (broken styling, layout issue): give Claude Code a surgical prompt. It edits the dashboard shell, commits, and pushes. Same as Beginner Workflow C.
GitHub Desktop
If the UI fix broke something, revert in GitHub Desktop. Data is safe in Supabase regardless.
About this tier 1. Architecture and route model Migration from Intermediate 2. Choose a framework 3. Set up Vercel hosting 4. Build domain routes 5. Add authentication 6. Build admin panel 7. Build meta dashboard 8. Retire Beginner infrastructure Daily workflows 9. Create / Update / Build features / Fix errors

Manor - Advanced (months 4-8+)

One deployed application with domain-specific routes. Not six separate websites. One codebase, one database, one auth system, one deployment. Each domain is a route with its own UI and data model, but they share infrastructure.

Advanced Full application with route-level auth
Architecture

A single Next.js or Astro app deployed on Vercel (free tier). Supabase handles data and authentication. Each life domain is a route within the app. Claude Code generates components and pushes to the repo. You review and merge.

Advanced architecture

Application (one Next.js or Astro app on Vercel)
├── /home ← public. Build guides, project status, diagrams
│ ├── /home/back-yard
│ ├── /home/front-yard
│ ├── /home/studio
│ ├── /home/old-house
│ └── Split by DIY vs Pro within each area
├── /finance ← private. Auth required. Reserve plans, debt tracking
├── /career ← mixed. Newsletter content public, advisory pipeline private
├── /health ← private. Biomarkers, training, recovery
├── /inventory ← private. Tools, first aid, gym equipment, wishlists
├── /skills ← public. Skill map, flowmap, skill status
├── /admin ← private. Data entry UI, system health, deploy status
└── /meta ← private. Backend infra dashboard, database health, commit log
Route-level authentication

Some routes are public, some require login. Same app, same codebase, different access rules per route. Supabase Auth handles login. Row-level security means you can even mix within a domain: the fire pit build guide is public, but your contractor quotes are private.

Access model
RouteAccessWhy
/homePublicBuild guides and project walkthroughs are shareable content
/financePrivateAccount numbers, debt details, reserve strategies
/careerMixedNewsletter and speaking content public; advisory pipeline and employer data private
/healthPrivateBiomarkers, lab results, medication schedules
/inventoryPrivateTool values, purchase history, home contents
/skillsPublicSkill map could become portfolio content
/adminPrivateData entry for all domains. Central management surface.
/metaPrivateInfrastructure health, deploy status, database metrics
Admin panel

A dedicated /admin route where you can input data into any domain without touching code. Add a project, update a status, log a tool purchase, record a biomarker. The admin panel writes to Supabase. The domain routes read from Supabase. One entry point, every domain updated.

Claude Code's role at this tier

Claude Code generates React/Astro components, writes database queries, builds new route pages, and pushes to the repo. You review the pull request in GitHub, merge if it looks right. Claude chat with skills still handles the thinking (project kickoffs, expert panels, planning). Claude Code handles the building.

Why one app, not six websites

Six separate websites means six deployments, six auth configurations, six things that break independently, and six codebases to maintain. One app with routes gives you the same domain separation with shared infrastructure. Shared auth, shared database, shared deployment, shared styling. When you fix a bug in the nav, it's fixed everywhere.

Migration: Intermediate to Advanced

This is the largest transition. You're moving from static HTML files with a database backend to a real deployed application. Claude Code does the heavy lifting. You review and approve.

Step 1 Choose a framework
Evaluate

Two strong options: Next.js (React-based, most ecosystem support, Claude Code knows it deeply) or Astro (simpler, faster for content-heavy sites, less JavaScript). For Manor, either works. Next.js is the safer bet because Claude Code has more training data on it.

Scaffold the app

Have Claude Code create the initial app in your manor repo. This replaces the static HTML files with a proper application structure. Your existing Supabase database stays the same. The app just reads from it differently.

Step 2 Set up Vercel hosting
Create account

Go to vercel.com, sign up with your GitHub account. Connect your manor repo. Vercel auto-detects the framework and deploys on every push. Free tier covers personal projects comfortably.

Add environment variables

In Vercel's project settings, add your Supabase URL and API key as environment variables. This keeps your credentials out of the code. Vercel injects them at build time.

Custom domain (optional)

If you want manor.yourdomain.com instead of manor.vercel.app, add a custom domain in Vercel settings. Costs whatever your domain registrar charges (typically $10-15/year). Not required.

Step 3 Build the domain routes
Start with /home

Have Claude Code create the /home route first. It reads projects from Supabase where domain = "home", renders them as cards with your Manor brand styling, and links to the markdown guides. This is your existing dashboard functionality, just in a new structure.

Add sub-routes

Create /home/back-yard, /home/front-yard, etc. Each sub-route filters by area. Within each area, split the view into DIY and Pro sections. Claude Code generates the components, you review.

Build remaining domains one at a time

Add /finance, /career, /health, /inventory, /skills as separate routes. Each has its own layout and data model but shares the nav shell, auth system, and database connection. Do one domain per week. Don't rush.

Step 4 Add authentication
Enable Supabase Auth

Turn on authentication in your Supabase project. Set up email/password login (just for you, so one account is fine). Supabase Auth is built in and free.

Add login page

Have Claude Code create a simple login page at /login. Email + password, nothing fancy. Supabase handles the session management.

Protect private routes

Have Claude Code add middleware that checks for an active session before serving /finance, /health, /inventory, /admin, and /meta. No session = redirect to login. Public routes (/home, /skills) skip the check.

Row-level security

For mixed routes like /career, set up row-level security in Supabase. Public rows (newsletter content) are readable without auth. Private rows (advisory pipeline, employer data) require a logged-in session. Claude Code writes the security policies, you review them in the Supabase dashboard.

Step 5 Build the admin panel
Create /admin route

Have Claude Code build a data entry interface at /admin. Forms for each domain: add a project, update a status, log a tool, record a biomarker. The forms write directly to Supabase. No file editing, no commits, no Claude involvement for routine data entry.

Add bulk operations

For efficiency: a "quick update" view that shows all active projects with inline-editable status and next action fields. Change five statuses, hit save, done. This replaces the entire Dashboard Updater workflow for simple status changes.

Step 6 Build the meta dashboard
Create /meta route

Your infrastructure health view. Shows: Vercel deployment status, Supabase database size and API usage, recent GitHub commits, uptime for each route, and links to all domain views. This is the "backend of the Manor" dashboard.

Connect external devices

With the app running and the API live, any device can consume it. Your Raspberry Pi calendar reads from the same Supabase API. A wall-mounted tablet can display the /home route full-screen. A phone bookmark opens /health for quick biomarker logging.

Step 7 Retire Beginner infrastructure
Migrate off GitHub Pages

Once the Vercel app is stable, your GitHub Pages URL (thekingofconsulting.github.io/manor) is no longer needed. The app runs on Vercel. The GitHub repo still exists for version control and Claude Code access, but Pages can be turned off.

Archive static files

The original index.html, static HTML guides, and markdown reference files can be moved to an archive/ folder in the repo. They served their purpose. The database and the app are the system now.

Checkpoint: At the end of Advanced, you have a single deployed application with domain-specific routes, route-level authentication, a centralized admin panel for data entry, and a meta dashboard for infrastructure health. Claude Code generates components and pushes to the repo. You review and merge. Any device with internet can consume the API. The Manor is a real application, not a collection of HTML files.

Advanced daily workflows

Claude chat (with skills)
Claude Code
Admin panel (/admin)
Supabase
Vercel
GitHub Desktop

Workflow A: Creating a new project guide

Claude chat
Run the relevant skill. Work through the flow. Claude produces the guide as markdown.
Claude Code
Tell Claude Code: "Add this guide to the /home/back-yard route as fire-pit-build-guide.md and register it in Supabase." Claude Code saves the file, adds the artifact row to the database, and pushes to GitHub.
One prompt. File saved, database updated, repo pushed. No downloading, no dragging, no manual registry edits.
Vercel
Vercel detects the push and auto-deploys. The new guide is live at its route within 60 seconds. The domain page shows the link automatically because it reads from Supabase.

Workflow B: Updating project status

Admin panel
Open /admin in your browser. Find the project. Change the status, phase, or next action inline. Click save.
No Claude chat. No Claude Code. No commits. Just a form. This is the fastest path for routine status changes.
Supabase
Database updated. Every route that reads from the projects table reflects the change on next load. All devices, all views, instant.
For batch updates after a busy week: You can still run the Manor Updater skill in Claude chat to scan recent conversations and produce a set of updates. But instead of edit instructions, it produces admin panel entries or direct Supabase API calls. Use whichever feels faster.

Workflow C: Building a new domain route or feature

Claude chat
Describe what you want: "I need an /inventory route that shows my tools grouped by category with owned/wanted filtering and a wishlist section." Claude chat helps you think through the data model and UI requirements.
Claude Code
Claude Code creates the route component, the Supabase query, and the page layout. It creates a branch, pushes, and opens a pull request.
GitHub
Review the pull request. GitHub shows you exactly what changed: green lines added, red lines removed. If it looks right, click Merge. If not, close it and give Claude Code more specific instructions.
Vercel
Auto-deploys on merge. The new route is live. If it breaks something, revert the merge in GitHub. Vercel redeploys the previous version automatically.

Workflow D: Fixing errors

Admin panel
Data errors (wrong status, bad link, typo): fix directly in the admin panel. Click, edit, save. Zero tokens, zero commits.
Claude Code
UI errors (broken layout, styling bug, missing component): give Claude Code a surgical prompt. It edits the component, commits to a branch, opens a PR.
Vercel
Vercel shows a preview deployment for the branch before you merge. You can test the fix on the preview URL without touching production. Merge when it looks right.
What changed from Intermediate: The admin panel replaces most Claude interactions for routine data entry. Claude chat is reserved for creative work (project kickoffs, expert panels, guide creation). Claude Code is reserved for building new features and fixing UI bugs. Vercel handles deployment automatically. Most daily operations (status updates, data corrections) happen through the admin panel with zero token cost.
Skills to learn 1. HTML + CSS, Git, JavaScript, Databases, Auth, Deployment, API 2. What you do NOT need to learn Preparation 3. What to do now 4. Transition triggers

Skills you'll need

You don't need to learn everything before starting. Learn each skill when you reach the tier that needs it, not before.

HTML + CSS Basics Beginner
10-15 hours

You're already reading and requesting changes to HTML. Formalizing this into "I understand what a div is, what a class does, and can change a color" is the goal. You don't need to write HTML from scratch. You need to read what Claude produces and know if it's right.

Git Concepts Beginner
5-10 hours

You're using GitHub Desktop as training wheels. Understanding branches, commits, merges, and reverts conceptually (not command-line) makes you confident instead of cautious.

JavaScript Basics Intermediate
15-20 hours

Enough to understand how a page fetches data from a database and renders it. Not enough to write React from scratch. You need to read a fetch() call and know what it does.

Database Concepts Intermediate
10 hours

Tables, rows, queries, relationships. Supabase has a spreadsheet-like UI that makes this approachable. You don't need SQL fluency. You need the mental model: "projects is a table, each project is a row, status is a column."

Authentication + Security Advanced
10-15 hours

OAuth flows, row-level security in Supabase, API keys, environment variables. This is where "password protected" actually lives. Claude Code implements it, but you need to understand what it built.

Deployment Advanced
5 hours

Vercel or Netlify for hosting. Environment variables for secrets. Custom domain configuration if you want manor.yourdomain.com instead of a Vercel URL.

API Design Advanced
10 hours

How your admin UI talks to Supabase. How each domain route reads from it. REST endpoints, query parameters, error handling. Claude Code writes the code, but you need to understand the flow.

What you do NOT need to learn

Framework internals

React, Vue, Svelte deep dives. Claude Code writes components. You review them. You don't need to understand the virtual DOM or state management patterns.

CSS frameworks

Tailwind, Bootstrap, etc. Claude handles styling implementation. You describe what you want. Your Manor brand skills encode the design system.

DevOps

Docker, CI/CD pipelines, Kubernetes. Overkill for a personal system. Vercel handles deployment automatically when you push to GitHub.

What to do now to prepare

Even while running Beginner, these habits make the eventual transitions smoother:

Separate commits

When doing Workflow B, commit the manifest and registry first, then let Claude Code commit the dashboard edit separately. Two commits, two independent revert targets. This is the single most useful habit your coworker recommended.

Keep the manifest canonical

Treat project-manifest.md as the source of truth, not the dashboard HTML. If they ever disagree, the manifest wins. This mental model maps directly to "the database is truth, the UI is a view," which is exactly how Intermediate and Advanced work.

Name files consistently

The lowercase-hyphenated naming convention you're already using maps cleanly to database keys and URL routes. No migration headaches when filenames are already clean.

Track what breaks

For the next 4-6 weeks, note every time you hit friction: a revert that lost data, a change that needed to propagate to two places, a guide that was expensive to regenerate, a page you wished was password protected. Those friction points tell you exactly which Intermediate features you actually need.

Start learning Tier 1 skills

HTML/CSS basics and Git concepts. These are useful immediately and make every interaction with Claude Code and GitHub Desktop more confident. Start with freeCodeCamp's HTML/CSS course or The Odin Project's foundations track.

The transition triggers: Move to Intermediate when you've hit at least two of these friction points: (1) a revert that lost data you wanted to keep, (2) a second dashboard or system that needs the same project data, (3) a page that genuinely needs password protection, (4) token costs on artifact regeneration becoming noticeable. Move to Advanced when you have 3+ domain views running and the admin panel becomes more efficient than Claude Code prompts for data entry.