Top 23 Gateway Open-Source Projects
Your go-to microservice framework for any situation, from the creator of Netty et al. You can build any type of microservice leveraging your favorite technologies, including gRPC, Thrift, Kotlin, Retrofit, Reactive Streams, Spring Boot and Dropwizard.Project mention: sttp now suppots Armeria backend | reddit.com/r/scala | 2021-02-23
Armeria which fully supports Reactive Streams and non-blocking IO now powers sttp as a backend.
Pomerium is an identity-aware access proxy.Project mention: Accessing non-public services (promethus, grafana etc.) from internet | reddit.com/r/kubernetes | 2021-06-07
have you taken a look at https://www.pomerium.com/ you need an oidc provider after which internet application can be available over the internet.
Scout APM - Leading-edge performance monitoring starting at $39/month. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
MQTT gateway for ESP8266, ESP32, Sonoff RF Bridge or Arduino with bidirectional 433mhz/315mhz/868mhz, Infrared communications, BLE, beacons detection, mi flora, mi jia, LYWSD02, LYWSD03MMC, Mi Scale compatibility, SMS & LORA.Project mention: Smart button | reddit.com/r/esp8266 | 2021-04-12
A single ESP8266 running OpenMQTTGateway is capable of sending the commands that would otherwise have been sent by the physical remotes.
An all-rounder traffic orchestration systemProject mention: Easegress: An all-rounder traffic orchestration system | news.ycombinator.com | 2021-06-16
a homebridge plugin for XiaoMi Aqara plugin.Project mention: Xiaomi Gateway 3 plugin for HB | reddit.com/r/homebridge | 2021-01-11
What about https://github.com/YinHangCode/homebridge-mi-aqara
Implement GraphQL servers and gateways with Fastify
Welcome to the WSO2 API Manager source code! For info on working with the WSO2 API Manager repository and contributing code, click the link below.Project mention: Why would anyone want a REST API for electronic invoices? | reddit.com/r/invoicing | 2021-03-20
The paradox situation is that there is an overwhelming amount of work, not because everything is so hard, but because everything is so easy. There is still a lot to learn, and to do, our Dockerfile is a mess. API management wise I only just had a glance at WSO2, which looks really promising).
Run Linux Software Faster and Safer than Linux with Unikernels.
A complete payment library for Elixir and Phoenix FrameworkProject mention: Learning Ruby: Things I Like, Things I Miss from Python | news.ycombinator.com | 2021-02-15
> Stripe, including webhooks support, actively developed
I've looked into Stripity Stripe. For some time it was unmaintained and ended up getting taken over by another maintainer. It's also not as comprehensive as the official Stripe libraries. There's also a very big difference in using an official Stripe library and hoping for the best with a random one someone developed. Just skimming the code base it looks like the Checkout module is missing features that exist in the official Stripe library in every other supported language.
According to the README file for Stripity Stripe it's also using Stripe's API version from 2019. There have been multiple major API updates since then, and there's been an open issue since November 2020 to add support for newer API versions with no replies. Personally I would be using one of those major features too.
And this really is the point I'm trying to drive home. With Ruby, Python, Go, PHP, Node, Java and .NET these are problems you don't even need to think about. You just pick the payment provider's official SDK and start coding immediately, often times there's also an abundance of resources to implement the billing code itself into your app too through blog posts, official docs, YouTube videos, and even paid products like https://spark.laravel.com/. Stuff that makes integrating billing into your app (through Stripe, BrainTree and Paddle) being something you get done in 1 day instead of 3 months.
With Elixir it becomes weeks of comprehensive research, evaluating questionable libraries, opening PRs, and becoming a full time library developer just to get to the point where you could even maybe begin to start accepting payments with just Stripe.
> the best I've found is https://github.com/aviabird/gringotts
I asked the Gringotts developers if they would be supporting PayPal about 5 hours after they announced the project ~3 years ago. He said it was coming and to stay tuned. It's now ~3 years later and PayPal support isn't there. Neither is BrainTree or Paddle. Here's the open issue for PayPal support from 2018 (not by me, I asked on another site) https://github.com/aviabird/gringotts/issues/114. The Stripe integration is also missing a ton and hasn't been touched since 2018.
By the way, the Pay gem is really good. It's a smart abstraction and supports a ton of different subscription / 1 off payment use cases. Even complex ones like the type of app I was building.
> It's definitely a few weeks work to roll your own from scratch so to be honest I'd probably just integrate with Twilio and just pay for someone else to handle this for me.
Twilio ends up being 1 potential delivery method, it's not really someone you pay to solve the problem for you.
There's wanting to show notification in the app over websockets, saving them into a database, emailing them out only if they are unread, maybe sending an SNS through Twilio, Slack and other providers.
The noticed gem handles all of this for you (and supports Twilio too).
Notifications in general is another example where other frameworks have this solved in very good ways, but it becomes another example where you have to stop developing your app and start developing a notification library with Elixir.
At this point we've only talked about payments and notifications too. There's lots of other examples.
Full-featured, middleware-oriented, programmatic HTTP and WebSocket proxy for node.js
A federated api gateway for graphql services. https://gateway.nautilus.dev/ (by nautilus)Project mention: Bramble: A simple, production-ready GraphQL federation gateway in Go | reddit.com/r/golang | 2021-06-09
It's interesting, but I do have some questions. Does it support being Apollo Gateway Federated? Can I federate DGraph with it? How does it differ from [Tyk's Graphql gateway](https://github.com/jensneuse/graphql-go-tools) or [Nautilus](https://github.com/nautilus/gateway) ?
Configurable and distributed GraphQL Gateway. Convert your legacy data sources or monitor your existing GraphQL Services with a visual dashboard.Project mention: An open-source API Aggregator for mobile developers just launched. Looking for beta-testers | reddit.com/r/swift | 2021-03-04
IBeam is an authentication and maintenance tool used for the Interactive Brokers Client Portal Web API Gateway.Project mention: EOD Options Data, how to get? | reddit.com/r/algotrading | 2021-05-04
:computer: pbgo is a mini RPC/REST/Grpc-Gateway framework based on Protobuf
Remote Desktop Gateway in Go for deploying on Linux/BSD/KubernetesProject mention: RDP gateway websocket upgrade in haproxy? | reddit.com/r/haproxy | 2020-12-22
I made a few changes/fixes to rdpgw and now mstsc.exe can connect through
IRC gateway for slack, running on localhost for one userProject mention: What relatively simple program would you like to see on Linux? | reddit.com/r/linux | 2021-02-16
https://github.com/ltworf/localslackirc/ if you are interested.
Yocto based gateway images including ChirpStack components.Project mention: Totally new...LoRa, TTN, IoT,... | reddit.com/r/Lora | 2021-06-02
If you want to get more involved and run your own infrastructure you could look at something like ChirpStack.
Local Python Gateway for Tuya devices (by TradeFace)Project mention: Most "open" bulb solution? ESP/ARM, and the state of the bulbs (Tasmota/Local-Tuya/The Z's) | reddit.com/r/homeassistant | 2021-01-16
Indeed, this is the route that seems most feasible, given that 8266's will likely continue to disappear from Tuya products. This is what I was getting at when I said "local server that emulates tuya servers." Do you know what the specific project you're referring to is called? I've actually been trying to get this one set up, but having quite a bit of difficulty. https://github.com/tradeface/tuyagateway/ I'm thinking you may be referring to a different project, though.
OWASP Application Gateway is an HTTP proxy that handles Oauth2 authentication and session managementProject mention: What are the security measures to implement when using reverse proxy? | reddit.com/r/webdev | 2021-04-27
Authentication and Session Management Depending on your architecture you may want to implement authentication and session management on your reverse proxy. The OWASP Application Gateway (https://github.com/gianlucafrei/Application-Gateway) implements such functionality.
Docker container for Zwave2Mqtt Gateway and Control Panel appProject mention: Server in other area | reddit.com/r/homeassistant | 2020-12-29
One alternative would be if you have any kind of always-on computer in your home. Connect the Z-Wave dongle, run a docker container, and you're done.
Customize MQTT messages between two brokersProject mention: Forwarding MQTT messages from local broker to remote broker | reddit.com/r/MQTT | 2021-01-25
Use a configurable MQTT to MQTT gateway such as Mqtt2Mqtt, which is written specifically for this type of application.
Modbus to OPC UA GatewayProject mention: Free Modbus to OPC UA gateway | reddit.com/r/PLC | 2021-01-19
Source code and binaries here: https://github.com/juangburgos/QUaModbusClient
Skyhook is a Redis API compatible gateway to Aerospike DatabaseProject mention: Skyhook: a Redis-compatible interface to Aerospike Database | dev.to | 2021-04-20
Migrating to a different technology is always a challenging process. You need to train engineers, rewrite the codebase, and set up a production cluster to take over. Using Skyhook, you can move applications to Aerospike first, then come back to rewrite them as Aerospike native, or if you’re satisfied with their performance, keep them as they are. Or maybe you’re looking to expose your Aerospike data to external Redis-based applications? We would love to hear how you would use this project.
gateway for secure SQL queries & API requests from web/mobile clients (by summation-app)Project mention: Show HN: Secure SQL queries from web/mobile clients | news.ycombinator.com | 2021-03-04
- you can chain together multiple queries/API requests, with parameters securely passed from one to the other server-side
looking forward to your questions & feedback, thanks!
What are some of the best open-source Gateway projects? This list will help you: