-
-
OLED pitch-black feed with headers, hero, quote, and agent rail hidden via user settings.
-
Personalization studio drawer for adjusting layout density, measure, type scales, and surfaces.
-
Realtime voice guide in dark emerald monospace connecting spoken intent to WebMCP actions.
-
Distraction-free reading view on warm paper with generative artwork and local save actions.
-
In-page WebMCP tool inspector displaying schemas and live execution for all 44 tools.
-
Adaptive desk in night mode with live WebMCP telemetry and quick palette switching.
-
Publishing composer with structured fields exposed directly to browser agents.
-
Public profile rendered in editorial serif typography and dark emerald forest slate.
Commonplace
Commonplace is a blog and reading platform prototype that adapts to you. Using WebMCP, browser agents reshape layout, colors, and drafts around how you write and read.
Inspiration
For as long as I can remember, the very first thing I do when opening any new piece of software is dive straight into settings. I inspect every toggle, theme picker, and slider to bend the tool to how I think. Google built Material Expressive for a reason. I spend hours tuning browser extensions and user scripts because default interfaces never quite fit.
The web has spent thirty years treating consumers as passive recipients of frozen pixels. A product team in another time zone decides your column width, font scale, and color scheme, and you are expected to conform to it. In the AI era, that model makes no sense. We now have the capability to make software listen and adapt. I wanted to build a corner of the web that I could reshape in real time to what matters to me right now.
What it does
Commonplace is a personal blog and reading platform where the interface adapts to how you read, write and feel.
Instead of hiding controls inside nested preference menus, Commonplace turns its entire runtime into an action contract for browser agents via WebMCP:
- You can tell the agent you feel tired, and it instantly softens contrast, drops into night mode, and narrows the reading measure.
- You can ask the agent to hide sidebars, rearrange homepage blocks, or surface your saved queue without touching settings.
- The agent searches topics, queries your reading list, and edits active drafts beside you in the composer without taking over your screen.
- Through OpenAI Realtime WebRTC mapped to the exact same WebMCP tools, you can talk to the desk to dictate thoughts or re-theme the workspace hands-free.
How I built it
Commonplace is built as a local-first application using React 19, TypeScript, Bun, and Vite, with styling powered by Tailwind CSS v4 and dynamic CSS custom properties.
- The platform registers 44 distinct tools on
document.modelContextusing@mcp-b/webmcp-polyfill. Every tool includes strict JSON schemas, descriptions, and operational hints likereadOnlyHintandidempotentHint. - Tools are registered under their canonical dot names and parallel underscore aliases so ChatGPT browser agents can call them without validation failures.
- The styling system maps 13 semantic OKLCH tokens directly to CSS variables, allowing runtime palette and typography adjustments with zero layout jank.
- The app links
document.modelContext,window.modelContext, andnavigator.modelContextso host environments that attach to any of the three discover all capabilities. - All post data, drafts, and theme overrides live in browser
localStorage, removing all sign-up friction for judges.
Challenges I ran into
The hardest part was making the UI look coherent and intentional given the sheer amount of live customization built into it.
When you allow an agent to adjust corner radii, swap between sans-serif and editorial serifs and manipulate color scales dynamically, layout can quickly become messy. Engineering a design system that holds its balance and typography rhythm while every dial remains turnable was technically demanding.
I also ran into browser environment edge cases and platform nuances. Ensuring that WebMCP implementation works properly across all supported platforms was the primary challenge, as it's the first thing you have to get right if you want to deliver the rest of the experience.
Accomplishments that I'm proud of
It clicked when the experience I craved for years finally matched the one I built. I opened the browser, spoke to the space, and watched the page translate my intent and mood into the exact visual setup I needed, right there, with no delay. The experience is as seamless as it should be, and I think it's the first time when the paradigm shift can finally happen as scale, for all.
What I learned
Rigid rules will soon be a thing of the past in consumer software. Building Commonplace proved that WebMCP fundamentally changes the relationship between people and software. When websites expose typed tool contracts instead of forcing agents to scrape fragile CSS selectors, software becomes truly flexible and accessible.
What's next for Commonplace
Commonplace represents a design philosophy I intend to carry into every product I build. Beyond this hackathon, I want to explore multi-device agent synchronization, peer-to-peer reading networks, and richer declarative forms so that adaptive software becomes the standard way people experience the web moving forward.
Built With
- bun
- css3
- html5
- javascript
- localstorage
- lucide-react
- model-context-protocol
- oklch
- openai
- openai-realtime-api
- oxlint
- radix-ui
- react
- shadcn-ui
- tailwindcss
- typescript
- vercel
- vite
- vitest
- webmcp
- webrtc
Log in or sign up for Devpost to join the conversation.