ChatGPT Apps are a new UI paradigm: your code renders directly inside the ChatGPT conversation. But building them from scratch means solving the same infrastructure problems every time you start a project. A ChatGPT App framework changes that.
TL;DR: Sunpeak is the first ChatGPT App framework. It gives ChatGPT App developers the same developer experience that Next.js gives web developers: a simulator, components, CLI scaffolding, testing, and deployment.
What Is a ChatGPT App Framework?
A ChatGPT App framework provides the development infrastructure for building applications that use OpenAI's Apps SDK runtime. The Apps SDK defines how ChatGPT Apps work: the protocol, the rendering model, the communication between your MCP server and ChatGPT. A framework builds on top of that to give you the tooling you actually need to develop, test, and ship apps.
Think of it like the relationship between React and Next.js. React is the rendering library. Next.js gives you routing, server-side rendering, a dev server, and deployment. You can build a React app without Next.js, but most teams don't, because the framework handles the infrastructure so you can focus on your product.
A ChatGPT App framework does the same thing for the Apps SDK.
The Pain of Building Without a Framework
If you've tried building a ChatGPT App from the official resources alone, you've hit these problems:
No local testing. The only way to see your app render is to connect it to the real ChatGPT, which requires a paid ChatGPT Plus or Team subscription with developer mode. Every change means tunneling your local server, refreshing ChatGPT, and waiting for the round trip.
No component library. OpenAI provides apps-sdk-ui, a low-level React component library. But it gives you primitives, not production-ready components. You're rebuilding common patterns from scratch every time.
No project structure. Every project starts from zero. There's no standard way to organize your resources, tools, and configuration. You're making structural decisions before you've written a line of product code.
No testing story. You can't run automated tests against the ChatGPT interface. There's no way to verify your app renders correctly in CI. Manual testing through the ChatGPT UI is the only option.
No deployment pipeline. Getting your app from local development to production means manually configuring an MCP server, setting up hosting, and wiring everything together.
What a ChatGPT App Framework Gives You
Sunpeak maps each of those pain points to a concrete solution:
Local runtime simulator. Run sunpeak dev and open localhost:6767. You get a full ChatGPT simulator that renders your app exactly as ChatGPT would, with no paid account, no tunneling, and no round trips.
sunpeak dev
# Simulator running at http://localhost:6767
# MCP server running at http://localhost:6766
Apps SDK UI components. Sunpeak includes production-ready components built on top of OpenAI's apps-sdk-ui. Cards, carousels, forms, and layouts, so you're not starting from scratch.
CLI scaffolding. Run sunpeak new and get a working project with dependencies installed, configuration set up, and a starter app ready to modify.
pnpm add -g sunpeak && sunpeak new
Testing support. Write tests with Vitest and Playwright that run against the simulator. Verify your UI renders correctly in CI without connecting to ChatGPT.
Deployment via Resource Repository. Sunpeak's Resource Repository gives you a deployment target for your app's resources, so you can ship without manually wiring MCP servers.
Building With vs. Without a Framework
Here's what the developer workflow looks like side by side:
Without a framework:
# Set up a new project
mkdir my-app && cd my-app
npm init -y
npm install @modelcontextprotocol/sdk express
# Manually configure MCP server...
# Manually set up React rendering...
# Manually build UI components...
# Set up ngrok tunnel to test in ChatGPT...
# Hope it renders correctly...
With sunpeak:
# Set up a new project
pnpm add -g sunpeak && sunpeak new
cd my-app && pnpm install
# Develop with instant feedback
sunpeak dev
# Open localhost:6767, done.
The difference isn't just fewer commands. It's fewer decisions, fewer things to debug, and fewer things that can go wrong before you've started building your actual product.
When You Don't Need a Framework
A framework isn't always the right choice.
If you're building a simple server-side-only MCP tool that doesn't render any UI in ChatGPT, you don't need sunpeak. A plain MCP server with a few tool handlers is straightforward to set up with just the @modelcontextprotocol/sdk package.
If you're writing a one-off script or experimenting with the protocol, going framework-free is fine.
But the moment you're building a UI that renders inside ChatGPT, especially one you plan to maintain and ship to users, a framework pays for itself immediately.
Get Started
Sunpeak is open source and free to use.
- Documentation: guides, API reference, and tutorials
- GitHub: source code and issue tracker
- ChatGPT App Framework: overview of sunpeak's capabilities
pnpm add -g sunpeak && sunpeak new
Top comments (0)