redis
| Kind | ffi-zig |
|---|---|
| Categories | database caching ffi |
| Keywords | redis database cache key-value nosql |
Redis client for Kit using native Zig FFI
Files
| File | Description |
|---|---|
kit.toml | Package manifest with metadata and dependencies |
src/main.kit | Main module - exports all public functions and types |
zig/kit_ffi.zig | C ABI exports for Kit-Zig interop |
zig/redis.zig | RESP protocol and TCP socket handling |
tests/redis.test.kit | Tests for connection and key-value ops |
examples/basic.kit | Simple get/set operations demo |
examples/redis.kit | Full Redis command examples |
LICENSE | MIT license file |
Architecture
Command Flow
sequenceDiagram
participant App
participant Redis.kit
participant Zig FFI
participant Redis Server
App->>Redis.kit: set / get / del
Redis.kit->>Zig FFI: RESP Protocol
Zig FFI->>Redis Server: TCP Command
Redis Server->>Zig FFI: RESP Response
Zig FFI->>Redis.kit: Parse Result
Redis.kit->>App: Result
FFI Structure
graph TD
A[Kit Code] -->|import Redis| B[src/main.kit]
B -->|extern-zig| C[zig/redis.zig]
C --> D[zig/kit_ffi.zig]
D --> E[TCP Socket]
E --> F[Redis Server]
Dependencies
No Kit package dependencies.
Installation
kit add gitlab.com/kit-lang/packages/kit-redis.gitUsage
import Kit.RedisLicense
MIT License - see LICENSE for details.
Exported Functions & Types
RedisError
Redis error type for typed error handling. Variants distinguish between connection and command errors.
Variants
RedisConnectionError {message}RedisCommandError {message}