One API surface, infinite languages. A polyglot web framework with a Rust core. Write your backend in any of 16 languages. Frontend in JS/TS only. Fast, secure, simple.
A web framework should be fast by default, secure by default, and simple to learn. Unique.js delivers all three without trade-offs.
Hand-rolled HTTP/1.1 parser, trie router, io_uring zero-copy I/O, and SIMD JSON. 86k+ req/s on 2-core CI runners — 10-50x faster than Express or FastAPI.
HSTS, CSP, X-Frame-Options, CORS, rate limiting, and JWT auth — all ON by default. You would have to explicitly disable them. Security is not optional.
Write your backend in Rust, JavaScript, TypeScript, Python, Go, Java, Kotlin, Dart, Swift, C++, PHP, Ruby, C#, Elixir, or Lua. One API, 16 languages.
Classic onion-model middleware pipeline. Each middleware wraps the next. Short-circuit by returning a response without calling next().
SQLite, PostgreSQL, MySQL. CRUD, JOINs, transactions, migrations, and Argon2id password hashing — all from #[derive(Model)]. No extra dependencies.
Tailwind-like utility classes compiled in Rust. 100+ utilities, responsive prefixes, state variants. No PostCSS, no Tailwind config, no Node.js dependency.
Server-side rendering via data() + template() functions. Client-side hydration makes pages interactive without re-fetching. File-based routing.
RFC 6455 WebSocket with broadcast support. HTTP/3 via quinn + h3. TLS via rustls. All built in — no extra crates needed.
OpenAPI 3.1 spec generated automatically from your routes. Swagger UI at /docs. No annotations needed — just register routes and the docs appear.
See how Unique.js stacks up against other popular web frameworks.
| Feature | Unique.js | Express.js | FastAPI | Actix |
|---|---|---|---|---|
| Language | 16 (polyglot) | JavaScript only | Python only | Rust only |
| Core engine | Rust | Node.js (V8) | Python (uvicorn) | Rust |
| Requests / sec | 86,000+ | ~8,000 | ~2,500 | ~90,000 |
| Security middleware | On by default | Manual (helmet) | Manual | Manual |
| Built-in ORM | Yes (SQLite/PG/MySQL) | No | No (SQLAlchemy) | No (diesel) |
| WebSocket | Built-in (RFC 6455) | Via ws library | Manual | Via actix-web-actors |
| HTTP/3 | Yes (quinn + h3) | No | No | No |
| CSS engine | Built-in (Tailwind-like) | No | No | No |
| SSR | Yes (.kng files) | No | No (Jinja2) | No |
| Learning curve | Easy | Easy | Easy | Steep |
16 supported languages — pick one to start the tutorial