whatisgithub

What is waku?

wesbos/waku — explained in plain English

Analysis updated 2026-07-29 · repo last pushed 2025-02-24

5Audience · developerComplexity · 3/5StaleSetup · moderate

In one sentence

A lightweight React framework for building small to medium-sized websites and web apps using server components and file-based routing. It is still in early development and not yet ready for production use.

Mindmap

mindmap
  root((repo))
    What it does
      Builds React websites
      Server components by default
      File based routing
    Tech stack
      React
      JavaScript
    Use cases
      Marketing sites
      Light e-commerce stores
      Simple web apps
    Audience
      Startup developers
      Agency developers
    Status
      Early development
      Not production ready

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a marketing site with fast pre-rendered pages.

USE CASE 2

Create a light e-commerce store with dynamic product pages.

USE CASE 3

Develop a simple interactive web app using server and client components.

What is it built with?

ReactJavaScript

How does it compare?

wesbos/waku00kaku/wp-rest-playground1ncendium/aibuster
Stars555
LanguageJavaScriptPython
Last pushed2025-02-24
MaintenanceStale
Setup difficultymoderatehardmoderate
Complexity3/53/53/5
Audiencedeveloperdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires understanding React server components and how to configure the server/client boundary.

So what is it?

Waku is a lightweight framework for building React websites and web apps. It is designed for developers at startups and agencies working on small to medium-sized projects like marketing sites, light e-commerce stores, and simple web applications. The name means "framework" in Japanese, and the goal is to bring a simpler, more enjoyable developer experience to modern React development. The project focuses on React's newer "server components" pattern, which lets your code run on the server by default rather than always sending everything to the user's browser. This means you can do things like fetch data from a database or read files securely without bloating the user's download. When you need interactivity like a button click counter, you simply add a single line of code at the top of that specific file to mark it as a "client component" that runs in the browser. This approach keeps your application bundle smaller than traditional React setups. It also includes a straightforward routing system based on your folder structure. You create pages and layouts by adding files to a pages directory, and the framework handles the URL mapping for you. You can choose to statically pre-render some pages at build time for speed, or dynamically render them on each visit for personalized content. The routing supports standard patterns like dynamic URLs for blog posts or product categories. The framework is aimed at teams who want modern React features without the weight of larger frameworks suited for heavy enterprise applications. It is explicitly still in rapid development and not yet recommended for production projects, as features are still being added and changes are expected before a stable release. A notable tradeoff is its embrace of server components, which introduce a learning curve around which code runs where. Waku acknowledges this complexity but argues the flexibility of moving the boundary between server and client code is worth it, keeping everything in one codebase rather than splitting backend and frontend apart.

Copy-paste prompts

Prompt 1
I want to build a marketing site with Waku. Set up a basic project structure with a few statically pre-rendered pages and a shared layout.
Prompt 2
Create a simple interactive counter component in Waku that runs on the client, and explain how to mark it as a client component.
Prompt 3
Build a blog with Waku that uses dynamic routing for individual blog post pages based on the folder structure.

Frequently asked questions

What is waku?

A lightweight React framework for building small to medium-sized websites and web apps using server components and file-based routing. It is still in early development and not yet ready for production use.

Is waku actively maintained?

Stale — no commits in 1-2 years (last push 2025-02-24).

How hard is waku to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is waku for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.