jetzig/README.md
Bob Farrell 3519483f34 Switch to http.zig
Use Karl Seguin's http.zig as HTTP server backend:
https://github.com/karlseguin/http.zig

Update loggers to use new `jetzig.loggers.LogQueue` to offload logging
to a background thread.

Numerous other optimizations to remove unneeded allocs.

Performance jump on a simple request from approx. 2k requests/second to
approx. 40k requests/second (Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz).

Color support for Windows

Zmpl partial arg type coercion
2024-05-12 21:33:26 +01:00

58 lines
2.4 KiB
Markdown

![Jetzig Logo](demo/public/jetzig.png)
_Jetzig_ is a web framework written in 100% pure [Zig](https://ziglang.org) :lizard: for _Linux_, _OS X_, _Windows_, and any _OS_ that can compile _Zig_ code.
Official website: [jetzig.dev](https://www.jetzig.dev/)
_Jetzig_ aims to provide a rich set of user-friendly tools for building modern web applications quickly. See the checklist below.
Join us on Discord ! [https://discord.gg/eufqssz7X6](https://discord.gg/eufqssz7X6).
If you are interested in _Jetzig_ you will probably find these tools interesting too:
* [Zap](https://github.com/zigzap/zap)
* [http.zig](https://github.com/karlseguin/http.zig) (_Jetzig_'s backend)
* [tokamak](https://github.com/cztomsik/tokamak)
* [zig-router](https://github.com/Cloudef/zig-router)
* [zig-webui](https://github.com/webui-dev/zig-webui/)
* [ZTS](https://github.com/zigster64/zts)
* [Zine](https://github.com/kristoff-it/zine)
## Checklist
* :white_check_mark: File system-based routing with [slug] matching.
* :white_check_mark: _HTML_ and _JSON_ response (inferred from extension and/or `Accept` header).
* :white_check_mark: _JSON_-compatible response data builder.
* :white_check_mark: _HTML_ templating (see [Zmpl](https://github.com/jetzig-framework/zmpl)).
* :white_check_mark: Per-request arena allocator.
* :white_check_mark: Sessions.
* :white_check_mark: Cookies.
* :white_check_mark: Error handling.
* :white_check_mark: Static content from /public directory.
* :white_check_mark: Request/response headers.
* :white_check_mark: Stack trace output on error.
* :white_check_mark: Static content generation.
* :white_check_mark: Param/JSON payload parsing/abstracting.
* :white_check_mark: Static content parameter definitions.
* :white_check_mark: Middleware interface.
* :white_check_mark: MIME type inference.
* :white_check_mark: Email delivery.
* :white_check_mark: Background jobs.
* :white_check_mark: General-purpose cache.
* :white_check_mark: Development server auto-reload.
* :x: Environment configurations (develompent/production/etc.)
* :x: Custom/non-conventional routes.
* :x: Testing helpers for testing HTTP requests/responses.
* :x: Database integration.
* :x: Email receipt (via SendGrid/AWS SES/etc.)
## LICENSE
[MIT](LICENSE)
## Contributors
* [Zackary Housend](https://github.com/z1fire)
* [Andreas Stührk](https://github.com/Trundle)
* [Bob Farrell](https://github.com/bobf)