wasp-lang/wasp

The batteries-included full-stack framework for the AI era. Develop JS/TS web apps (React, Node.js, and Prisma) using declarative code that abstracts away complex full-stack features like auth, background jobs, RPC, email sending, end-to-end type safety, single-command deployment, and more.

18,224 stars TypeScript 11 components 4 connections

Full-stack web framework for React/Node.js with declarative configuration

Developer writes .wasp config files, waspc compiler generates full-stack TypeScript apps, CLI tools run and deploy the generated applications.

Under the hood, the system uses 2 feedback loops, 3 data pools, 3 control points to manage its runtime behavior.

Structural Verdict

A 11-component ml training with 4 connections. 1546 files analyzed. Loosely coupled — components are relatively independent.

How Data Flows Through the System

Developer writes .wasp config files, waspc compiler generates full-stack TypeScript apps, CLI tools run and deploy the generated applications.

  1. Config Declaration — Developer writes .wasp files declaring app structure, auth, operations
  2. Code Generation — waspc Haskell compiler processes .wasp files and generates React/Node.js code from templates
  3. Database Setup — CLI tools set up SQLite or PostgreSQL databases with Docker containers
  4. App Compilation — Generated TypeScript code is compiled and bundled for development or production
  5. Runtime Execution — Full-stack app runs with type-safe RPC, auth, and database operations

System Behavior

How the system actually operates at runtime — where data accumulates, what loops, what waits, and what controls what.

Data Pools

Generated App Templates (file-store)
Mustache templates that get populated with user config to generate full-stack apps
Build Artifacts (file-store)
Compiled binaries and assets packaged for distribution
Example Applications (file-store)
Demo apps showcasing framework features and patterns

Feedback Loops

Delays & Async Processing

Control Points

Technology Stack

Haskell (framework)
Core compiler implementation
TypeScript (framework)
Generated app runtime and templates
React (framework)
Frontend framework for generated apps
Node.js (framework)
Backend runtime for generated apps
Prisma (database)
Database ORM for generated apps
Docker (infra)
Database containerization for development
Tailwind CSS (framework)
Styling framework for UI components
Vite (build)
Build tool and development server
Next.js (framework)
Documentation website framework

Key Components

Sub-Modules

waspc (independence: high)
Core Haskell-based compiler that transforms .wasp files into full-stack applications
wasp-app-runner (independence: high)
CLI tool for running and managing Wasp applications in development
npm-package-generator (independence: high)
Tool for creating platform-specific NPM packages from build artifacts
documentation-site (independence: medium)
Next.js-based website with documentation, tutorials, and marketing content
mage (independence: medium)
Visual project creation and management interface

Configuration

context7.json (json)

Explore the interactive analysis

See the full architecture map, data flow, and code patterns visualization.

Analyze on CodeSea

Related Ml Training Repositories

Frequently Asked Questions

What is wasp used for?

Full-stack web framework for React/Node.js with declarative configuration wasp-lang/wasp is a 11-component ml training written in TypeScript. Loosely coupled — components are relatively independent. The codebase contains 1546 files.

How is wasp architected?

wasp is organized into 5 architecture layers: Compiler Core, Generated App Templates, CLI Tools, Examples & Demos, and 1 more. Loosely coupled — components are relatively independent. This layered structure keeps concerns separated and modules independent.

How does data flow through wasp?

Data moves through 5 stages: Config Declaration → Code Generation → Database Setup → App Compilation → Runtime Execution. Developer writes .wasp config files, waspc compiler generates full-stack TypeScript apps, CLI tools run and deploy the generated applications. This pipeline design reflects a complex multi-stage processing system.

What technologies does wasp use?

The core stack includes Haskell (Core compiler implementation), TypeScript (Generated app runtime and templates), React (Frontend framework for generated apps), Node.js (Backend runtime for generated apps), Prisma (Database ORM for generated apps), Docker (Database containerization for development), and 3 more. This broad technology surface reflects a mature project with many integration points.

What system dynamics does wasp have?

wasp exhibits 3 data pools (Generated App Templates, Build Artifacts), 2 feedback loops, 3 control points, 3 delays. The feedback loops handle polling and convergence. These runtime behaviors shape how the system responds to load, failures, and configuration changes.

What design patterns does wasp use?

5 design patterns detected: Template Generation, Declarative Configuration, Type-Safe RPC, Component System, Multi-Database Support.

Analyzed on March 31, 2026 by CodeSea. Written by .