Cav
Full stack web primitives for Deno.
Guiding principles:
- Least Astonishment
- Modular, schema-like server definitions
- No-fuss data serialization
- End-to-end typesafety
- Developer independence
- Use the platform
- Have fun 🌈
Status: Ready to play with, but not ready for production.
Index:
Goals
- It should do the basics
- Routing
- Static asset serving
- Signed cookies
- Web sockets
- Form and JSON parsing
- De/serialization of most JS data types, including Dates, Maps, Files…
- Runtime bundling for browser-side TypeScript
- Works with frontend frameworks like Preact
- It shouldn’t require special configs, setups, or tooling
- No CLI or config files
- No dictated project structures
- The client function should use types imported from the server to fully type
requests and responses
- End-to-end typesafety
- Compatible with Zod
- Its syntax should be functional and declarative
- Immutable, schema-like Router and Endpoint definitions
- No middleware patterns
- Functions all the way down
- It should be as independent as possible
- No third-party dependencies
- Production deployments should be a simple git-commit-push
- Deno Deploy without a build step
Inspirations
Cav’s description on GitHub is inspired by the Weird Wide Webring 🤙
Setup
TODO
Getting started
TODO
Examples
TODO
Docs
TODO