Doh.js is a JavaScript application ecosystem built on multiple inheritance.
The industry has proven that multiple inheritance is terrible and hard.
But what if...
...it didn't have to be?
Scroll...
Protocol-agnostic routing that unifies HTTP and WebSocket handling. The same route handles both protocols seamlessly, with file-based routing and automatic middleware integration.
Automated reverse proxy configuration and SSL certificate management. Multi-site deployment becomes point-and-click with automatic certificate issuance and renewal.
Centralized orchestration of distributed Doh instances. Manage multiple servers, synchronize files bidirectionally, monitor logs, and control deployments from a unified dashboard.
Declarative data processing pipelines that work identically across server and browser. Transform data using command sequences with built-in database operations and templating.
Unified database access using SQLite (server) and alasql (browser) with synchronous operations by default. Simple, consistent API across all environments.
Template processing directly integrated into Dataforge pipelines. Generate dynamic content with live data injection and protocol handlers for file includes.
Complete authentication system with JWT tokens, email verification, multi-device sessions, and brute-force protection. Admin interfaces handle user management without custom tooling.
Context-aware authorization with Doh.permit()
for runtime object evaluation. Express complex rules like "users can only edit documents they own" with simple syntax.
Single Sign-On server and client modules for distributed authentication. Create identity providers or anchor to existing ones with simple configuration.
VS Code-compatible IDE running directly in browsers. File operations, terminal access via server-side PTY, and Git integration work with live filesystems across any Doh instance.
Model Context Protocol server for AI assistants. AST-powered code search, documentation search, browser automation, and unified debugging make AI development partnerships seamless.
Create standalone HTML applications with Virtual File Systems, package modules as Dohballs for sharing, and export applications with all dependencies included.
Start with the documentation and see how it all works it greater detail.
Explore the Complete DocumentationLaunch your first Doh application and gain access to the entire ecosystem—from basic web servers to sophisticated cloud-orchestrated applications.
curl -fsSL https://deploydoh.com/install | bash
powershell -c "irm deploydoh.com/install.ps1 | iex"
> Requires Bun or Node.js for npm package management.
- If needed, we can even install those for you too:
doh install bun
or
doh install node
mkdir my-doh-app
cd my-doh-app
doh init webserver
Scaffolds a new Doh project with a pre-configured web server.
doh run
Your new project runs at http://localhost:3000
with live reloading.
Ready to dive deeper? Explore the Architecture.