From 56096ec607a5a4c9273ec900aa1f3b1638acc3f5 Mon Sep 17 00:00:00 2001 From: Adonis Jimenez <271941740+donny-devops@users.noreply.github.com> Date: Tue, 7 Jul 2026 15:55:56 +0000 Subject: [PATCH] chore: add community-health files and repo hygiene - Add MIT LICENSE / SECURITY.md / CODE_OF_CONDUCT.md where missing - Add CI/license status badges and architecture diagrams to key READMEs - Reconcile documentation with actual repository state --- LICENSE | 21 +++++++++++++++++++++ README.md | 24 ++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e5f02a9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Adonis Jimenez + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 5acea21..114e29d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,11 @@ # Node TS API Gateway +[![CI](https://github.com/donny-devops/node-ts-api-gateway/actions/workflows/ci.yml/badge.svg)](https://github.com/donny-devops/node-ts-api-gateway/actions/workflows/ci.yml) +[![Security Hygiene](https://github.com/donny-devops/node-ts-api-gateway/actions/workflows/security-hygiene.yml/badge.svg)](https://github.com/donny-devops/node-ts-api-gateway/actions/workflows/security-hygiene.yml) +[![TypeScript](https://img.shields.io/badge/TypeScript-5.x-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/) +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) + + A TypeScript-based Node.js API gateway designed to centralize routing, middleware, authentication, and service-to-service communication for distributed applications. ## Overview @@ -211,3 +217,21 @@ You can deploy this gateway to platforms such as: ## License Choose the license that fits your project, such as MIT, Apache-2.0, or a private internal license. + +## Architecture + +```mermaid +flowchart LR + Client -->|HTTPS| GW[API Gateway] + GW --> Auth[JWT Auth] + Auth --> RL[Rate Limiter] + RL --> Val[Zod Validation] + Val --> Router[Router / Proxy] + Router --> SvcA[Service A] + Router --> SvcB[Service B] + Router --> SvcC[Service C] + RL -.-> Redis[(Redis)] +``` + +*Requests flow through authentication, Redis-backed rate limiting, schema +validation, and routing before reaching downstream services.*