Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zon-dev/zinc

Zinc is a web framework written in pure Zig with a focus on high performance, usability, security, and extensibility.
https://github.com/zon-dev/zinc

api epoll framework kqueue performance resetful rest-api usability web web-development web-framework zig zig-package zig-zinc ziglang zinc

Last synced: about 2 months ago
JSON representation

Zinc is a web framework written in pure Zig with a focus on high performance, usability, security, and extensibility.

Awesome Lists containing this project

README

        

# zinc

----

Zinc is a framework written in pure Zig with a focus on high performance, usability, security, and extensibility.

**:construction: It's still under development. Built on std.net. Not the fastest zig framework in the universe, but fast enough.**

**In the works**:
* Remove std.http.Server
* Blocking mode auto change to kqueue for MacOS and BSD
* Non-blocking mode auto change to io_uring for Linux

A basic example:
```zig
const zinc = @import("zinc");

pub fn main() !void {
var z = try zinc.init(.{ .port = 8080 });

var router = z.getRouter();
try router.get("/", helloWorld);

try z.run();
}

fn helloWorld(ctx: *zinc.Context) anyerror!void {
try ctx.text("Hello world!", .{});
}
```

### Some features are:
- **Fast**
- **Custom allocator**
- **Multithreading**
- **Middleware**
- **Routes grouping**
- **Rendering built-in**
- **Extensible**
- **Suite of unit tests**
- **Usability**

### Documentation
See more at https://zinc.zon.dev/

#### Quick Start
Learn and practice with the Zinc [Quick Start](https://zinc.zon.dev/src/quickstart.html), which includes API examples and builds tag.

#### Examples
A number of examples demonstrating various use cases of Zinc in the [zinc-examples](https://github.com/zon-dev/zinc-examples) repository.