44 releases

Uses new Rust 2024

new 0.0.52 May 7, 2025
0.0.50 Mar 24, 2025
0.0.39 Nov 25, 2024
0.0.20 Jul 25, 2024
0.0.13 Mar 28, 2024

#529 in Database interfaces

Download history 24/week @ 2025-01-17 159/week @ 2025-01-24 251/week @ 2025-01-31 204/week @ 2025-02-07 191/week @ 2025-02-14 250/week @ 2025-02-21 157/week @ 2025-02-28 36/week @ 2025-03-07 63/week @ 2025-03-14 176/week @ 2025-03-21 64/week @ 2025-03-28 206/week @ 2025-04-04 90/week @ 2025-04-11 29/week @ 2025-04-18 25/week @ 2025-04-25 77/week @ 2025-05-02

289 downloads per month

MIT license

150KB
2.5K SLoC

Quick Microservices - qm

utilities to create quick microservices in Rust


GitHub repositoryCargo packageDocs

github.com - quick-microservice-rs crates.io - qm
github.com - workflow - build


Feature flags

default

There are no default features. Every feature provided must be enabled explicitly.

entity

Implements the opinionated concept of an Entity. A way to handle database models with predefined constrains to describe permissions and ownership. Uses the crates sea-orm and sqlx.

Integrates with the features keycloak, mongodb, redis, role and nats.

kafka

Provides an easy way to configure and set up a connection to a Kafka server. Configuration can be done with environment variables. The default prefix is KAFKA_. Uses the crate rdkafka.

Also provides opinionated topics and producers for Kafka events.

keycloak

Provides an easy way to configure and set up a connection to a Keycloak server. Configuration can be done with environment variables. The default prefix is KEYCLOAK_. Uses the crate keycloak.

Also provides an opinionated configuration template and some helper functions.

mongodb

Provides an easy way to configure and set up a database connection for a MongoDB database. Configuration can be done with environment variables. The default prefix is MONGODB_. Uses the crate mongodb.

nats

todo!()

pg

Provides an easy way to configure and set up a database connection for a PostgreSQL database. Configuration can be done with environment variables. The default prefix is PG_. Uses the crate sqlx.

redis

Provides an easy way to configure and set up a database connection for a Redis database. Configuration can be done with environment variables. The default prefix is REDIS_. Uses the crates redis and deadpool-redis.

Also provides helper to handle worker queues and locking with Redis mechanisms.

role

todo!()

role-build

todo!()

s3

todo!()

server

Provides an easy way to get a server configuration. Configuration can be done with environment variables. The default prefix is SERVER_.

Also provides a graphql_handler.

The handler requires a qm_role::AuthContainer, so the feature role must be activated. Because the use of the handler is optional, the dependency is not automatically included.

utils

todo!()

Dependencies

~0–25MB
~408K SLoC