Wasp - Full-Stack Web Framework with Zero Boilerplate
Wasp is a DSL for building full-stack React/Node.js apps. Describe app features declaratively in a config file, write React and Node.js code, and deploy with a single CLI command.
TL;DR
TL;DR: Wasp is a DSL and framework for building full-stack React/Node.js apps — describe your app declaratively, write your own React/Node.js code, and deploy with a single CLI command. MIT licensed with 18.7k GitHub stars.
Source and Accuracy Notes
⚠️ This section is MANDATORY. All links must be verified from actual source, not guessed.
- Project page: wasp-lang.dev ← MUST visit and verify
- Source repository: github.com/wasp-lang/wasp ← MUST read README
- License: MIT ← verified from LICENSE file
- HN launch thread: news.ycombinator.com/item?id=--- ← HN launch at 115 points
What Is Wasp?
Wasp (Web Application Specification) is a Rails-like DSL and framework for React, Node.js, and Prisma. The core idea is simple: you write a declarative specification of your app’s structure, and Wasp generates the boilerplate, connecting your React frontend and Node.js backend with type-safe RPC.
From the official README:
“Wasp (Web Application Specification) is a Rails-like framework for React, Node.js, and Prisma. Build your app in a day and deploy it with a single CLI command!”
The key distinction from typical frameworks: Wasp does not hide your code. The generated project lives in .wasp/ and you own it. There is no lock-in — you can inspect and modify everything Wasp produces.
Setup Workflow
Step 1: Install the Wasp CLI
npm install -g waspc
Step 2: Create a New Project
wasp new my-app
cd my-app
This scaffolds a project with a main.wasp.ts spec file and the standard React/Node.js structure.
Step 3: Write Your App Spec and Code
In main.wasp.ts, you describe the high-level structure:
// file: main.wasp.ts
import { app, page, query, route } from "@wasp.sh/spec";
import { MainPage } from "./src/MainPage" with { type: "ref" };
import { getTasks } from "./src/queries" with { type: "ref" };
export default app({
name: "todoApp",
wasp: { version: "^0.25.0" },
title: "ToDo App",
auth: {
userEntity: "User",
methods: { email: {}, google: {} },
onAuthFailedRedirectTo: "/login",
},
spec: [
route("RootRoute", "/", page(MainPage)),
query(getTasks, { entities: ["Task"] }),
],
});
In schema.prisma, define your data model:
model Task {
id Int @id @default(autoincrement())
description String
isDone Boolean @default(false)
}
Your React and Node.js code lives in src/ and is referenced from the spec via the with { type: "ref" } syntax.
Step 4: Run Locally
wasp start
Wasp compiles the spec, generates boilerplate, and starts both the frontend dev server and the backend.
Step 5: Deploy with One Command
wasp deploy
Supports major hosting platforms. The exact target depends on your setup — see the deployment docs.
Deeper Analysis
What Wasp Handles Automatically
Based on the README feature list, Wasp wires up:
- Full-stack auth — email, Google, and other methods via the spec
- RPC — type-safe client-server communication without manual API boilerplate
- Jobs — background worker tasks defined in the spec
- Email sending — configured declaratively
- Full-stack type safety — types flow from Prisma schema through the spec to the React client
- Single-command deployment —
wasp deployhandles the full build and push
The DSL Approach
The *.wasp.ts files are the framework’s control plane. Unlike a traditional framework where you wire things together imperatively, Wasp interprets the spec to generate code. This is closer to a compiler than a runtime library — you describe the shape of the app and Wasp fills in the scaffolding.
Why This Matters for AI
The README explicitly calls out Wasp as “Perfect for AI by design”:
“Thanks to its high-level spec of the whole app, opinionated approach, built-in full-stack features, and tight integration of all parts of the stack, Wasp gives AI (agents) clear guardrails and structure, less boilerplate to manage, and better context management.”
With a well-defined DSL spec, an AI agent can understand the entire app structure at a glance rather than navigating through scattered configuration files.
Practical Evaluation Checklist
- Scope: Full-stack web framework — frontend (React) + backend (Node.js) + database (Prisma)
- Language: TypeScript for app code, DSL for app specification
- Deployment targets: Any Node.js host (via
wasp deploy) - License: MIT (verified via LICENSE file)
- Current version: v0.25.0 (from GitHub releases)
- GitHub stars: 18,695 (as of 2026-08-22)
- Lock-in: None — generated code is in
.wasp/and fully owned by developer - AI compatibility: DSL provides structured, complete app specification ideal for agent context
FAQ
Q: Is Wasp ready for production? A: Wasp has been actively developed since 2020 with nearly 19k GitHub stars. The v0.25.0 release and ongoing HN engagement indicate active maintenance. As with any framework, check the docs for any gaps specific to your use case.
Q: How does Wasp compare to Next.js or Remix? A: Next.js and Remix are React meta-frameworks — they handle routing and server rendering. Wasp is a level higher: it generates the entire full-stack structure including auth, jobs, and email from a declarative spec. The React code you write in Wasp is standard — Wasp does not replace React, it orchestrates it.
Q: Can I use Wasp without the CLI?
A: The CLI (waspc) is the primary interface. It handles compilation, code generation, and deployment. There is no alternative workflow documented in the official docs.
Q: Does Wasp work with any database besides Prisma? A: Prisma is the officially supported ORM. The spec references entities that map to Prisma models, so switching ORMs would require changes to the Wasp compilation layer.
Conclusion
Wasp occupies a distinctive niche: it is not a React library, not a Node.js framework, and not a hosting platform — it is a DSL that orchestrates all three. The declarative spec approach removes the most tedious parts of full-stack development while leaving your code fully accessible. For developers building SaaS products, internal tools, or MVPs who want to move fast without drowning in boilerplate, Wasp is worth a look.
If you have used Wasp, the HN launch thread at 115 points suggests strong community interest. Share your experience at news.ycombinator.com/item?id=---.
Related Posts
ai-setup
Recall – Persistent Memory for Claude Code via MCP Hooks
Recall gives Claude Code a permanent memory store that survives session restarts and context compaction. Four hooks capture and restore context automatically — with cloud SaaS or self-hosted options.
2/28/2026
dev-tools
Automotive Skills Suite for AI Engineering
Evaluate Automotive Skills Suite for APQP, ASPICE, HARA, safety-plan, and DIA workflows with setup notes, governance risks, and SME review guidance.
5/28/2026
dev-tools
awesome-agentic-ai-zh Roadmap Guide
Explore awesome-agentic-ai-zh as a Chinese agentic AI learning roadmap, with setup notes, track selection, study workflow, and evaluation guidance.
5/28/2026