GCP firestore and logging SDK in rust

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • tonic

    A native gRPC client & server implementation with async/await support.

  • I'm pretty sure that GCP's APIs (unlike AWS, which uses Smithy for very genuinely, very good reason) are defined using Protobuf and can be communicated with over gRPC, which means that you don't need to bind via cxx to GCP's C++ APIs. Take a look at this example using Tonic. If you're to use Tonic, you'll also be able to use Tower's middleware (main crate, http-specific) to implement retries, timeouts, tracing, and all the other things you need to be production-ready.

  • tower

    async fn(Request) -> Result<Response, Error>

  • I'm pretty sure that GCP's APIs (unlike AWS, which uses Smithy for very genuinely, very good reason) are defined using Protobuf and can be communicated with over gRPC, which means that you don't need to bind via cxx to GCP's C++ APIs. Take a look at this example using Tonic. If you're to use Tonic, you'll also be able to use Tower's middleware (main crate, http-specific) to implement retries, timeouts, tracing, and all the other things you need to be production-ready.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • google-api-proto

    This library generated from googleapis/googleapis using tonic-build.

  • Beside some few crates for e.g. Cloud Storage, there exists only auto-generated once like google-api-proto that works but are quite cumbersome to use. You might need to encapsulate the calls into your own layer to make them more rusty.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts