gerardtoko / yap

Open source GraphQL API Gateway for serverless application. Less code, safer API.

Home Page:https://manual.youngapp.co/community/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The project is under construction πŸ’ͺ🏾. You can contribute or click ⭐️ (see above ↗️ ) to support us. The first release to be available early February. Follow our news πŸ… on Twitter and Slack.

Less code, safer API.

contributions welcome GitHub Workflow Status (branch) Codacy Badge Codacy branch coverage GitHub last commit Requirements Status

Yap is the lightweight microservices API gateway in GraphQL that shines at the heart of any microservices or serverless architecture, which aims to be a smaller, more expressive, and more robust foundation for API management and automation workflows with low-code approach and security entreprise-gradle.

Please distinguish Yap (the core project of Young App) and YAP (the platform of Young App).

Motivation

Young App helps to automate business workflows across cloud and on-premise apps providing employees with prompt communication and building in teams sophisticated collaboration. As an illustration, YAP automates quotes processing for cash business, which may involve multiple apps.

Without API Management, we using Express, Koa or Hapi on Nodejs without security security handler, and all others NodeJS frameworks are based on http module, yap is different, designed only for serverless functions (event-driven) and GraphQL.

Yap combines the enterprise-grade api management and workflow automation platform and ease of use expected from client apps supporting on cloud-based with GraphQL and Policies.

Architecture

YAP combines GraphQL, XML policies and strong functional testing on serverless architecture.

Architecture

Key features of Yap πŸ™Œ

Yap offers powerful, yet lightweight features that allow fine-grained control over your API ecosystem.

  • Elegants XML Policies – Policies are a powerful capability of the system that allow the publisher to change API behavior through configuration in elegants with XML
  • GraphQL as API Gateway – GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. Yap use only GraphQL as API Gateway.
  • YAML Functional testing – CI-ready tests for REST APIs configured in YAML.
  • Error handling with Policies – Sentry provides self-hosted and cloud-based error monitoring that helps all software teams discover, triage, and prioritize errors in real-time.
  • Connectors – YAP is the only integration platform that was built from the ground to support a single design interface for developer/IT and for citizen integrators.
  • Universal middleware design – Inspired by Express or KoaJS and adapted for Serverless application and low-code approach.
  • Designed for Serverless – Yap is designed for serverless event functions on AWS, GCP or Azure Functions.
  • TypeScript – YAP is written in NodeJS and TypeScript, which makes it fast and easy to set up.

Documentation

Installing

It's an official version for JavaScript, available for Node.js backends, Serverless and AWS Lambda.

With yarn
npx create yap my-api
cd my-api
yarn start
With npm
npx create-yap my-api
cd my-api
npm start

Find more details on Usage guide

Enjoy πŸŽ‰

Opening issues

If you encounter a bug with YAP, we would appreciate if you inform us about it. Before opening a new issue, please go through existing issues to find the solution right away if your problem was solved before.

Attach the following details if appropriate:

  • SDK, Node.js
  • Environment and OS
  • Stack trace

The GitHub issues are intended for bug reports and feature requests. For quick help and questions on using the Yap SDK for JavaScript, please use the resources listed within Getting Help section. The time of our support experts is rushingly flying but even so, they would like to help you in time, and therefore, will appreciate your help in applying for support reasonably by providing full details and excluding duplicated issues.

Contribute

Yap is the open source and we love contributions! If you have an idea for a great improvement or spy an issue you’re keen to fix, follow our Contributing Guide.

No contribution is too small – we encourage you to provide feedback and report issues.

Community support 🌍

For general help using Yap, please refer to the official Yap documentation. For additional help, you can use one of these channels to ask a question:

License

This SDK is distributed under Apache License 2.0. See LICENSE.txt for more information.

Yap API management Cloud Edition (Coming soon) πŸ”₯

Yap API management Cloud Edition is a desktop version can be used with the Yap API Gateway to provide a full lifecycle API management platform. For more details, visit https://youngapp.co and to see the full feature set, explore https://manual.youngapp.co

Features available for cloud edition

  • Fully managed API – create your API on cloud editor and hosted by Young App in realtime.
  • Advanced policies – use advanced policies for better and more security.
  • Advanced connectors – use complex app and connectors directly on the YAP platform.
  • Versioning – use versionning for APIs and cloud processes.
  • Support and integration – beneficiate support by experts to select the best API and cloud integration.

About

Open source GraphQL API Gateway for serverless application. Less code, safer API.

https://manual.youngapp.co/community/

License:Apache License 2.0


Languages

Language:TypeScript 99.7%Language:JavaScript 0.3%