All Projects → dailydotdev → daily-gateway

dailydotdev / daily-gateway

Licence: AGPL-3.0 license
API gateway service also for authentication and user management

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to daily-gateway

koa-simple-ratelimit
Simple rate limiter for Koa.js v2 web framework
Stars: ✭ 17 (-45.16%)
Mutual labels:  koa2
laravel-api-guide
Laravel 5 project creation guide for REST APIs (needs an update!!)
Stars: ✭ 18 (-41.94%)
Mutual labels:  oauth
ApigilityConsumer
🍃 Zend Framework/Laminas and Expressive/Mezzio Apigility/Laminas API Tools Client Module to consume API Services
Stars: ✭ 15 (-51.61%)
Mutual labels:  oauth
okta-jhipster-microservices-oauth-example
A microservices architecture built with JHipster, OAuth 2.0, and Okta
Stars: ✭ 29 (-6.45%)
Mutual labels:  oauth
aurelia-open-id-connect
An aurelia adapter for the IdentityModel/oidc-client-js
Stars: ✭ 54 (+74.19%)
Mutual labels:  oauth
django-slack-oauth
Handles OAuth and stores slack token
Stars: ✭ 51 (+64.52%)
Mutual labels:  oauth
koa2-swagger-ui
Swagger UI as Koa v2 middleware
Stars: ✭ 95 (+206.45%)
Mutual labels:  koa2
Slack
[READ ONLY] Subtree split of the SocialiteProviders/Slack Provider (see SocialiteProviders/Providers)
Stars: ✭ 11 (-64.52%)
Mutual labels:  oauth
vue-koa-mongodb-oss
一个包含前后端鉴权、验证码生成、阿里云上传图片的前后端技术体系,技术栈vue、koa2、mongodb、oss
Stars: ✭ 82 (+164.52%)
Mutual labels:  koa2
koa-restful-boilerplate
A boilerplate for koa2 RESTful API development
Stars: ✭ 31 (+0%)
Mutual labels:  koa2
sonar-auth-gitlab-plugin
Use GitLab OAuth login in SonarQube login page
Stars: ✭ 97 (+212.9%)
Mutual labels:  oauth
koa-better-router
❤️ Stable and lovely router for `koa`, using `path-match`. Foundation for building powerful, flexible and RESTful APIs easily.
Stars: ✭ 88 (+183.87%)
Mutual labels:  koa2
erlang-oauth
An Erlang OAuth 1.0 implementation
Stars: ✭ 298 (+861.29%)
Mutual labels:  oauth
react-google-oauth2.0
React frontend login with OAuth 2.0 & integrates a Rest API backend.
Stars: ✭ 14 (-54.84%)
Mutual labels:  oauth
passport-oauth1
OAuth 1.0 authentication strategy for Passport and Node.js.
Stars: ✭ 23 (-25.81%)
Mutual labels:  oauth
casdoor
An Identity and Access Management (IAM) / Single-Sign-On (SSO) platform with web UI supporting OAuth 2.0, OIDC, SAML and CAS, QQ group: 645200447
Stars: ✭ 4,147 (+13277.42%)
Mutual labels:  oauth
koa-vue
前端vue+后端koa,数据库采用的mysql,开发完整的前后端项目
Stars: ✭ 18 (-41.94%)
Mutual labels:  koa2
ptt-daily-beauty
PTT Daily Beauty - 表特日報
Stars: ✭ 82 (+164.52%)
Mutual labels:  daily
reversevoice
倒放挑战 - ReverseVoice Ts Node Taro
Stars: ✭ 24 (-22.58%)
Mutual labels:  koa2
guwen-node
guwennet.com node端代码 koa2.x + mongodb
Stars: ✭ 14 (-54.84%)
Mutual labels:  koa2

Daily Gateway

API gateway service also for authentication and user management

Build Status License StackShare

The core concept of this service was to serve a gateway to all the incoming traffic. As the traffic grew the service introduced some performance spikes so I decided to distribute the traffic through the main load balancer. Now, this service is focused on user management. Registration, login, logout, referrals, and other user oriented functionality.

Stack

  • Node v16.15.0 (a .nvmrc is presented for nvm users).
  • Yarn for managing dependencies.
  • Koa as the web framework
  • MySQL and knex as a database layer

Project structure

  • test - There you can find all the tests and fixtures. Tests are written using mocha.
  • helm - The home of the service helm chart for easily deploying it to kubernetes.
  • seeds - JSON files with seed data for local development.
  • migrations - Knex migrations folder.
  • src - This is obviously the place where you can find the source files.
    • middlewares - Custom Koa middlewares.
    • models - Database layer functions split by entity type.
    • routes - Koa endpoints.
    • scripts - Utility scripts for administration tasks.
    • workers - Pub/Sub message handlers.

Local environment

Daily Gateway requires a running instance of MySQL.

Make sure to apply the latest migrations by running: yarn db:migrate:latest

Check out the config.js file to see the environment variables list. Some of the variables have a default value preconfigured.

Finally run yarn watch to run the service and listen to port 4000.

Want to Help?

So you want to contribute to Daily Gateway and make an impact, we are glad to hear it. 😍

Before you proceed we have a few guidelines for contribution that will make everything much easier. We would appreciate if you dedicate the time and read them carefully: https://github.com/dailydotdev/.github/blob/master/CONTRIBUTING.md

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].