Ockam
tonic
Ockam | tonic | |
---|---|---|
76 | 48 | |
4,352 | 8,966 | |
0.7% | 1.4% | |
10.0 | 8.6 | |
4 days ago | 7 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Ockam
-
Tunnelmole, an ngrok alternative (open source)
disclosure: I work at Ockam.
The Portals for Mac app is an example of the type of thing you could build using the open source stack of protocols. The README (linked by parent) links out to all of the relevant parts of the protocol documentation to explain how these work together. The NAT Traversal (https://github.com/build-trust/ockam/blob/develop/examples/a...) part of the README is probably the best explanation of why the free relay you get via Ockam Orchestrator is a useful part of this demo.
As for why would anyone trust this: The protocols are designed so you absolutely don't have to trust the relay. Trust is pushed out to the edges that you control and so you're not susceptible to a MITM attack if something like a relay is compromised. The protocol design for all of this is open and documented, and was independently audited by (IMO) some of the best in the business, Trail of Bits: https://docs.ockam.io/reference/protocols.
- Alt to Ngrok, Written in Rust
-
How we built a Swift app that uses Rust
🚀 Portals for Mac – A macOS app built in Swift that uses the Ockam Rust library to privately share a service on your Mac with anyone, anywhere. The service is shared securely over an end-to-end encrypted and mutually authenticated Ockam Portal. Your friends will have access to it on their localhost! This app is a great example of the kinds of things you can build with Ockam 👉
- Ockam is participating in Hacktoberfest - great opportunity for your first OSS contribution
- Participate in Hacktoberfest with Ockam!
-
Create End-to-End Channels in Rust with Ockam Routing
Ockam is a suite of programming libraries, command line tools, and managed cloud services to orchestrate end-to-end encryption, mutual authentication, key management, credential management, and authorization policy enforcement — all at massive scale. Ockam's end-to-end secure channels guarantee authenticity, integrity, and confidentiality of all data-in-motion at the application layer.
- Please do not spam other GitHub users via email
-
Tunnel via Cloudflare to Any TCP Service
We’ve been working on something (https://github.com/build-trust/ockam) that enables exactly this, among a whole host of other use cases. If you check out some of the code examples in the docs you’ll see how to setup a tunnel using the CLI.
For other use cases there’s also the programming libraries (only Rust atm, though I was spiking a TypeScript/Node PoC this week) which might provide more flexibility. Personally I’m excited by the idea of being able to move this kind of secure by design connectivity all the way into the application layer though.
-
How to grow an OSS community
If you're not already an active contributor to an open source project or two it can seem very daunting. You don't want to do the wrong thing and embarrass yourself. Remove that anxiety for people by giving them an easy way to do something low risk. Matt did that a couple of years ago by creating a long-lived issue for people to simply say hello. That's it. Say hi, introduce yourself. It's a safe place to make a first step.
- Hiring - Ockam (Series A SaaS)
tonic
-
Roll your own auth with Rust and Protobuf
Use tonic-build directly from Rust.
-
How to limit different concurrency number by service on Tonic?
} // Omit the remaining code and refer to the example in Tonic: https://github.com/hyperium/tonic/blob/master/examples/src/multiplex/server.rs ```
-
Ideas/Suggestions around setting up a data pipeline from scratch
If I’m not misunderstanding, you could both decode the gRPC protobuf AND write to delta lake in Rust. Tonic, Delta-rs.
-
Throughput doesn't increase with cores/threads count
Original post: https://github.com/hyperium/tonic/issues/1405. Cross-post here in case the problem is not specific to tonic.
-
Getting started with gRPC in Rust
Tonic
-
libp2p alternate
Just to double check Is this the correct repo?
-
Spaceman: A gRPC client from another world. Comes both as a CLI and as a GUI built with Tauri and Yew.rs
Wasm isn't involved much actually. Basically, the frontend asks the backend to perform a gRPC call on its behalf using Tauri events. They are like named channels on which you can send any serde-compatible value. But the backend is a normal Rust program so there are no constraints there. I use prost-reflect to encode/decode Protobuf messages according to Protobuf descriptors loaded at runtime and make the actual requests using tonic from the tokio ecosystem. prost-reflect is necessary because, normally, tonic expects the Protobuf descriptor to be known at compile time so it can make some code generation behind the scenes.
-
Is there something like Feathersjs for Rust?
You could have a look at gRPC i.e. https://github.com/hyperium/tonic
-
Tower - middleware or interceptor
Looking at this example code: https://github.com/hyperium/tonic/blob/master/examples/src/tower/server.rs
-
Keyword Generics Progress Report: February 2023 | Inside Rust Blog
The remaining gap is remote actors, since you still need some kind of serialization between them, and take your pick of standards for that one such as gRPC using Tonic.
What are some alternatives?
ejabberd - Robust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server)
actix-web - Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
rustls - A modern TLS library in Rust
grpc-rust - Rust implementation of gRPC
sshkit - An Elixir toolkit for performing tasks on one or more servers, built on top of Erlang’s SSH application.
tarpc - An RPC framework for Rust with a focus on ease of use.
socket - Socket wrapping for Elixir.
axum - Ergonomic and modular web framework built with Tokio, Tower, and Hyper
ring - Safe, fast, small crypto using Rust
prost - PROST! a Protocol Buffers implementation for the Rust Language
rust-crypto - A (mostly) pure-Rust implementation of various cryptographic algorithms.
rust-prometheus - Prometheus instrumentation library for Rust applications