Coder Social home page Coder Social logo

zeina1i / gatewayd Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gatewayd-io/gatewayd

0.0 0.0 0.0 5.35 MB

☁️ Cloud-native database gateway and framework for building data-driven applications ✨ Like API gateways, for databases ✨

Home Page: https://gatewayd.io

License: GNU Affero General Public License v3.0

JavaScript 0.10% Go 97.31% CSS 0.04% Makefile 1.35% HTML 0.73% Dockerfile 0.16% Shell 0.30%

gatewayd's Introduction

GatewayD logotype

Like API gateways, for databases

Cloud-native database gateway and framework for building data-driven applications.

Downloads Release Worflow Status Go Report Card Documentation Coverage Status

GatewayD is a free and open-source cloud-native database gateway and framework for building data-driven applications. It is a middleware that sits between your database servers and clients and proxies all their communication. It is like API gateways in system design, but instead is used for proxying database traffic, rather than HTTP traffic.

GatewayD is an L4 proxy for SQL, and eventually NoSQL, databases and clients. The core is database-protocol-agnotic, and the plugins encode, decode and add value to the database traffic flow, hence it can technically support all databases. You can either write your own plugins or make use of our built-in, community and enterprise plugins.

Using GatewayD, you can see through the queries and the data passing between your database server and clients, and take action. For example, you can cache the result of SQL SELECT queries or detect and prevent SQL injection attacks.

GatewayD is developed by GatewayD Labs and the community.

Features

  • Cloud-native:

    Built with cloud-native principles in mind: containerized, stateless, observable and extensible, while being secure and reliable.

  • Connection pooling and proxying:

    Pools connections to database servers and clients and proxies them together.

  • Database-agnostic:

    GatewayD proxies connections, while plugins enable database support.

  • Plugin-based & extensible:

    Plugins extend functionality. You can write your own plugins or use our built-in, community and enterprise plugins.

  • Multi-tenancy:

    Manage multiple databases and clients within a single GatewayD instance.

  • Full observability:

    Integrated logging, metrics, and tracing for comprehensive monitoring and observability.

Plugins & SDK

The plugins are the lifeblood of GatewayD. They are loaded on startup to add tons of functionality, for example:

  • Query parsing and processing
  • Authentication, authorization and access management
  • Caching
  • Injection detection and prevention
  • Firewalling
  • Query, schema and data management and transformation
  • Change data capture
  • Distributed query processing
  • Many other possibilities

The plugins are usually written in Go and are compiled into stand-alone executables. They are loaded on startup and are ready to be used by the users. In turn, the developers can write their own plugins and use them in their applications, which is made possible by using the SDK.

Documentation

The docs cover all aspects of using GatewayD. Some highlights include:

Contributing

We welcome contributions from everyone. Just open an issue or send us a pull request.

License

GatewayD is licensed under the Affero General Public License v3.0.

gatewayd's People

Contributors

chrisd-git avatar dependabot[bot] avatar hamedsalim1999 avatar hamsajj avatar jafar75 avatar likecodingloveproblems avatar mostafa avatar smnmna99 avatar snowavocado avatar zeina1i avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.