Claude Code Plugin
Describe it. Ship it.
One conversation. Seven quality gates. A production-ready SaaS app at a live HTTPS URL. Django + Next.js, Docker, Cloudflare Tunnel. You describe it, Claude builds it.
you /zapframe:create
claude What are you building?
you Invoice tracker for freelancers with Stripe billing
Scoping project...
Configuring 47 template variables
Validating Stripe key OK
Scaffolding Django + Next.js
Building backend API
Generating TypeScript contracts
Building frontend from contracts
Review agent: gate 5 PASS
Deploying to Cloudflare Tunnel
Review agent: gate 7 PASS
Live at https://invoicetracker.softwaresoftware.dev
The Problem
Every SaaS starts the same way.
Auth. API. Database. Frontend. Deployment. You've wired this boilerplate a hundred times. Zapframe does it once, correctly, and hands you a running app.
Describe what you want to build. Claude scopes the project, scaffolds from a battle-tested template, validates every credential, builds domain-specific logic, and deploys it live. An independent review agent checks the code at every gate. The agent that writes code never grades its own work.
Process
Seven gates. Zero shortcuts.
Every phase transition requires independent verification. Gates exist because of production scars.
Scope
Define data models, API endpoints, pages, and integrations. You approve the spec before anything gets built.
Configure
Fill 50+ template variables. Every credential is functionally validated — Stripe keys are curled, not just checked for emptiness.
Scaffold
Copy template, replace all variables, configure Docker. Grep confirms zero {{VARIABLE}} placeholders remain.
Customize
Rewrite marketing copy, email templates, and branding. Audit script scans for generic template content that slipped through.
Build
Backend first, always. API contracts are generated, not hand-written. Independent review agent verifies field sync and imports.
Test
Every endpoint curled. TypeScript compilation checked. Container logs inspected. Independent review agent signs off.
Deploy
Live HTTPS verified. SSL clean. DNS resolves. Every page that worked locally works live. Monitoring registered.
Feature Development
Build it. Then keep building.
/zapframe:dev — the ongoing development workflow for existing zapframe apps. Describe a feature, Claude builds it end-to-end with the same backend-first rigor as create.
Interrogate
Describe the feature. Claude asks 2-5 targeted questions to pierce through ambiguity. States defaults, gets confirmation, then builds.
Build
Backend first. Models, serializers, views. Generate TypeScript contracts. Then frontend from generated interfaces. Same order as create, always.
Verify & Test
Static analysis, TypeScript compilation, curl every endpoint, browser screenshots. Run all existing playbooks to catch regressions before deploying.
Playbook
Every feature generates a test playbook — documented steps, curl commands, edge cases. Playbooks accumulate into a living regression suite for the app.
Deploy & Test Live
Push to live. Then run every accumulated playbook against the live URL. Curl endpoints, browser screenshots, full regression. Not just the new feature — everything.
you /zapframe:dev
claude What feature are you adding?
you Add note sharing — users can share notes with other users by email
Building backend: NoteShare model, serializer, views
Generating TypeScript contracts
Building frontend from contracts
Review agent: gate 5 PASS
Running 3 existing playbooks locally
All playbooks PASS
Writing playbook: Note Sharing
Deploying to live
Running 4 playbooks against live URL
Live regression PASS
Architecture
Opinionated by design.
No decision fatigue. Battle-tested defaults. Same stack every time.
Frontend
- Next.js 15 App Router
- React 19 + TypeScript strict
- Tailwind CSS + shadcn/ui
- Axios API client
Backend
- Django 5.1 + DRF
- Python 3.13
- Celery + Redis
- django-allauth auth
Infra
- Docker Compose local
- Nginx reverse proxy
- Cloudflare Tunnel HTTPS
Integrations
- Stripe subscriptions
- Resend transactional email
- Google OAuth social login
- Sentry error tracking
Capabilities
What makes it different.
Not just scaffolding. A quality-enforced build pipeline.
Generated API contracts
After building the backend, a Django command introspects serializer fields and generates TypeScript interfaces. Zero field name mismatches. Frontend uses generated interfaces verbatim.
Isolated review agents
At gates 5, 6, and 7, an independent agent is spawned with no conversation history. It can't be influenced by the same biases that led to the code being written. Different eyeballs.
Credential validation
Configuration doesn't just check that keys are non-empty. It curls every API, verifies Stripe prices are active, tests Resend authentication. Inactive Stripe prices used to cause live 500s.
Backend-first, always
Frontend is always built from generated API contracts, never from guesses. Sequential build order eliminates the #1 source of production bugs: field name divergence.
Zero-cost deployment
Runs on your local machine. Nginx reverse proxy, Cloudflare Tunnel for SSL and public access. No cloud bills, no vendor lock-in. Multiple projects run simultaneously.
Customization audit
After scaffolding, an audit script scans for unreplaced variables, generic marketing copy, and template documentation that should have been deleted. No "shipped with placeholder copy" incidents.
Get Started
Install
Requires Claude Code, Docker, system Nginx, and cloudflared with a configured tunnel.
Add the marketplace
claude plugin marketplace add softwaresoftware-dev/softwaresoftware-plugins
Install zapframe + dependencies
/softwaresoftware:install zapframe
Create a new project
/zapframe:create
Or develop features on an existing app
/zapframe:dev