Launching today
WebJs is built for AI agents. It features native web components, server actions, and streaming SSR, all on web standards with no-build. At ~10k lines of code, it’s 95% smaller than Nextjs with a similar DX. Its minimal surface area and no-build architecture let AI agents read the framework source directly from node_modules, allowing them to understand and build without needing an MCP.








hire.win
I wanted to experiment with building a full-stack framework small enough for AI to read end-to-end without needing an MCP. What if the source code, both yours and the framework's in node_modules, was uncompiled, browseable, and readable? What if the browser console showed the exact code the AI wrote, with no transpiler in between?
That's the idea behind WebJs. It's live now at https://webjs.dev.
Built on Web Standards
Instead of a new component model, Webjs uses native Web Components. They are a browser standard and work everywhere. By default, they use Light DOM so your Tailwind classes just work, but you can opt into Shadow DOM with proper SSR via a single flag. Because 95% of the work is handled by the browser, the framework code is tiny: about 5% the size of Nextjs. You get power without the bloat.
The Tech Stack
I didn't want to reinvent the wheel, so Webjs plugs into tools with amazing DX:
- Prisma ORM for type-safe database management.
- Tailwind CSS for styling via the CLI.
- esbuild for millisecond-fast type stripping.
- superjson for server actions that support Date, Map, and Set.
NextJs Conventions
We use the file-tree routing people already know. Page, layout, route, error, middleware, and param folders all work exactly like the Nextjs app router. If you’ve used Nextjs, you already know Webjs.
Why AI Agents Love It?
AGENTS.md & CONVENTIONS.md: Every scaffold includes pre-defined guardrails and instructions so agents know exactly how to build and where to find the source code.
Readable Source: When an agent needs to understand the framework, it reads the actual JS in node_modules/@webjskit/core and node_modules/@webjskit/server. No minified soup.
No Build Step: .ts files are transformed in-memory by esbuild on the fly. Inline sourcemaps mean stack traces and breakpoints point straight at the source file, no separate build artifacts, no sourcemap pipeline to configure, hence making it easier for AI agents to debug.
End-to-end Type Safety: AI agents write fewer bugs because TypeScript catches errors across the server-client boundary.
Guardrail Enforcement: We include custom hooks for Claude Code and others to ensure agents can't bypass your rules.
The Journey
I built this for myself, since I've always advocated for staying close to web standards, but I can't compromise on Developer Experience! So, here's WebJs with 96% code coverage and 1000+ tests. It was a challenge to get Light DOM and Shadow DOM working perfectly with hydration, but the result is a framework that lets agents ship production features without guessing.
Get Started
npm i -g @webjskit/cli
webjs create my-app
cd my-app && npm install && npm run dev
Give it a try! I'd love to hear your thoughts. If you find it useful, a star on GitHub would mean a lot.
Links:
https://webjs.dev
https://github.com/vivek7405/webjs
https://www.npmjs.com/package/@w...