v0.1.74 — 20 May 2026
Improvement — Platform Studio is now usable on mobile
Who is affected: Anyone using Platform Studio on a phone or small tablet.
What was wrong
On mobile widths the header wrapped and overflowed, the sidebar was stuck in icon-only mode inside the burger drawer (so navigation labels weren’t visible), the Content module had no way to switch collections without going back to the data-model page, and wide tables could not be horizontally scrolled.
What changed
- The header now stays on a single row at every viewport width.
- Opening the burger drawer on mobile shows the fully expanded sidebar with all navigation labels visible.
- The drawer auto-closes on navigation, so it’s not in the way after picking a page.
- The Content module has its own mobile collection drawer, opened from a burger icon next to the page title.
- Wide tables scroll horizontally, and the pagination footer is sticky so it stays visible while you scroll.
Before / After
| Scenario | Before | After |
|---|---|---|
| Studio header on a phone | ❌ Wraps / overflows | ✅ Single row |
| Burger drawer sidebar | ❌ Icon-only | ✅ Fully expanded |
| Drawer after navigating | ❌ Stays open | ✅ Auto-closes |
| Switching collections in Content (mobile) | ❌ No entry point | ✅ Burger drawer |
| Wide tables on mobile | ❌ Clipped / unreadable | ✅ Horizontal scroll + sticky pagination |
Improvement — Dark mode is now consistent and legible
Who is affected: Anyone using Platform Studio in dark mode.
What was wrong
Header action icons — the burger toggle, sidebar collapse button, colour scheme toggle, and scope switcher — rendered with very low contrast and were effectively invisible. The data-model field-layout cards used raw greys that inverted in dark mode, producing washed-out cards. The Buildpad logo did not swap for a dark background.
What changed
- All header action icons now use a
header-subtlestyle that wins against Mantine’s inline colour tokens, so they have proper contrast in both light and dark mode. - Field-layout cards in the data-model UI now use semantic surface tokens and render correctly in dark mode.
- The Buildpad logo automatically swaps to its white variant in dark mode.
Before / After
| Element | Before (dark mode) | After (dark mode) |
|---|---|---|
| Burger / sidebar / scope / theme toggle | ❌ Near-invisible | ✅ Properly visible |
| Field-layout cards | ❌ Washed-out / inverted greys | ✅ Correct surface colours |
| Buildpad logo | ❌ Dark logo on dark background | ✅ Light logo variant |
Improvement — Datetime picker arrows render at the correct size
Affected fields: All datetime fields in the Content module.
The month-navigation arrows in the datetime picker are no longer oversized.
Documentation — Major accuracy pass across every public docs section
Who is affected: Anyone reading the public documentation site.
Every section of the docs has been audited against the codebase. Routes, type signatures, status values, config keys, environment variable names, and migration filenames have all been verified against the actual implementation and corrected where they had drifted.
Sections updated
- Connect API — authentication, files, filter-rules, items, schema
- Platform Studio — overview, data-model, content, users, roles & policies, files, settings
- Automate — workflows, extensions, cron jobs, custom services, event hooks, versioning, logs
- AI / MCP — available tools, connecting clients, overview
- Self-hosting — API reference, setup guide, environment variables, runtime env whitelisting, CORS, Docker, AWS, security, migrations
- Tutorials — headless blog, role-based access, workflow automation
Highlights worth calling out:
- MCP client setup (macOS): the Claude Desktop config path has been
corrected to
~/Library/Application Support/Claude/.... The previous~/.claude/...path was wrong on macOS. - MCP client setup (Cursor): the config key in
mcp.jsonismcpServers— the previousmcp.serverswould silently fail to register the server. - New MCP clients documented: Claude (Web) via custom connectors,
VS Code / GitHub Copilot (
.vscode/mcp.json), and Cline. - Self-hosting API reference now documents 8 additional endpoint groups
that previously existed in the codebase but weren’t listed in the docs:
activity,cron,logs,revisions,services,scope,workflow, andhealth. - Setup guide: the RLS helper function is
apply_rls_to_collection(notenable_rls_for_table); the admin-user script is a shell script that requires CLI args;supabase linkis required beforedb push. - Environment variables: the SMTP block has been corrected — the actual
variable names are
SMTP_PASSWORD,SMTP_FROM_EMAIL,SMTP_FROM_NAME,SMTP_ENABLED, andSMTP_IGNORE_TLS.NEXT_PUBLIC_APP_NAMEhas been removed because it does not exist. - Platform Studio → Settings has been rewritten: project name and URL
fields do not exist in the General tab — the only field there is
activity_retention_days. A previously undocumented CORS tab has been added. - Platform Studio → Users: access tokens are stored in plain text (not hashed), and inviting a user does not automatically send an email. These were both documented incorrectly before.
- Workflow automation tutorial has been rewritten end to end against the
actual workflow schema. Previous versions described a flat
transitionsarray with role names; the real schema usesinitial_stateplus per-state commands referencing policy UUIDs. The built-in “Send Email” action shown previously did not exist — the tutorial now demonstrates the real custom-extension pattern. The transition endpoint isPOST /api/workflow/transitionwith{ workflowInstanceId, commandName }; the history endpoint is/api/workflow-instances/:id/history.
Documentation site — Feedback widget on every page
The Buildpad feedback widget is now embedded in the docs site. You can leave feedback on any docs page directly, without leaving the site.