This repository has been migrated from the original
github.com/go-kratos-ecosystem/components.
Important
The v4 line may include breaking changes compared with v3, please use with caution. Backward compatibility is the default behavior within v4, and any incompatibilities will be noted in the release.
go get github.com/go-fries/fries/v4The catalog below lists the public modules in the stable release set. Examples and internal development tools are not included.
| Family | Modules | Description |
|---|---|---|
| Core | frieserrorsparallelconstraintscapability |
Release metadata, shared error helpers, parallel batch and stream processing, generic constraints, and capability contracts. |
| Batcher | batcher |
Size- and time-triggered batching with a bounded queue, serial processing, explicit flushing, and graceful shutdown. |
| Cache | cachecache/redis |
Cache abstractions and a Redis-backed store. |
| Crontab | crontab |
Adapts go-cron schedulers to the Kratos server lifecycle. |
| Codec | codeccodec/jsoncodec/msgpackcodec/soniccodec/protocodec/xmlcodec/yaml |
A shared encoding contract with JSON, MessagePack, Sonic, Protocol Buffers, XML, and YAML implementations. |
| Config | config |
Type-safe configuration propagation through context.Context. |
| Chi | chi |
A Chi-based HTTP server adapter. |
| CloudEvents | cloudevents/protocol/amqp091cloudevents/eventdispatcher |
AMQP 0.9.1 transport and event dispatching for CloudEvents. |
| Debounce | debounce |
Trailing-edge debouncing with latest-value replacement, serial handlers, explicit flushing, and cancellation. |
| Env | env |
Utilities for representing and propagating application environments. |
| Encrypter | encrypter |
AES-CTR string encryption and decryption helpers. |
| Ent | entent/multidriver |
Ent integrations for logging and routing operations across multiple drivers. |
| Event | eventevent/middleware/recovery |
Synchronous type-aware event dispatching with optional panic recovery middleware. |
| Eino | eino/components/embedding/cachedeino/components/embedding/cached/cacher/rediseino/components/embedding/cached/cacher/gorm |
Cached Eino embeddings with Redis and GORM cache backends. |
| Lifecycle | lifecycle |
Context-aware application startup, execution, rollback, and graceful shutdown. |
| Filesystem | filesystemfilesystem/s3filesystem/localfilesystem/oss |
A logical-path storage contract with Amazon S3, local, and Alibaba Cloud OSS drivers. |
| Gin | gin |
A Gin-based HTTP server adapter. |
| GORM | gorm/logger/multigorm/logger/otelgorm/scope |
Multi-target and OpenTelemetry loggers plus reusable query scopes for GORM. |
| Hyperf | hyperf/jethyperf/jet/middleware/loggerhyperf/jet/middleware/recoveryhyperf/jet/middleware/retryhyperf/jet/middleware/timeouthyperf/jet/middleware/otel |
A Hyperf-compatible RPC client with logging, recovery, retry, timeout, and OpenTelemetry middleware. |
| Hashing | hashinghashing/md5 |
Reusable deterministic digest helpers and an MD5 implementation. |
| Health | health |
Named, context-aware application health checks with structured reports and HTTP probe handling. |
| Idempotency | idempotencyidempotency/memoryidempotency/redis |
Atomic idempotency claims and completed records with memory and Redis stores. |
| HTTP | http/server |
A common HTTP server wrapper that can participate in the Kratos lifecycle. |
| JSON-RPC | jsonrpc |
A lightweight JSON-RPC 2.0 client. |
| Log | log/slog/multilog/slog/syslog |
log/slog handlers for fan-out logging and syslog. |
| Kratos | kratos/middleware/corskratos/middleware/protovalidatekratos/middleware/otel |
CORS, protobuf validation, and OpenTelemetry middleware for Kratos. |
| Locker | lockerlocker/redis |
Distributed lock contracts and a Redis implementation. |
| Queue | queuequeue/adapter/memoryqueue/adapter/rabbitmqqueue/adapter/redisqueue/kratos/serverqueue/middleware/recovery |
Task queue primitives, memory, RabbitMQ and Redis adapters, Kratos lifecycle integration, and recovery middleware. |
| Rate Limit | ratelimitratelimit/memoryratelimit/redis |
Key-based GCRA rate limiting with memory and Redis stores. |
| MySQL | mysql/canalmysql/canal/positioner/redismysql/canal/server |
MySQL binlog processing with Redis position storage and server lifecycle integration. |
| OpenTelemetry | otel/otlp |
Global OpenTelemetry provider configuration using OTLP exporters. |
| Poll | poll |
Context-aware condition polling for eventually consistent state and asynchronous work. |
| Ptr | ptr |
Generic pointer helpers. |
| Recovery | recovery |
Shared panic recovery utilities. |
| Signal | signal |
Signal handling integrated with application server lifecycles. |
| Slices | slices |
Generic slice helpers. |
| Strings | strings |
String helpers for common application code. |
| Support | support |
General-purpose helper types and value utilities. |
| Time | time/period |
Immutable half-open time intervals with intersection, subtraction, merging, and gap detection. |
| Timezone | timezone |
Time zone propagation through application contexts. |
| UDP | udp |
A lifecycle-aware UDP server. |
| Webhook | webhookwebhook/sender |
Standard Webhooks signing, verification, secret rotation, and single-attempt HTTP delivery. |
| X | x/paginationx/printsx/container |
Experimental pagination, terminal output, and dependency container utilities without compatibility guarantees. |
See CONTRIBUTING.md for contribution guidelines and component design conventions.
The MIT License (MIT). Please see License File for more information.