24

XgeneCloud – Instant REST and GraphQL APIs on Any SQL Database

 3 years ago
source link: https://github.com/xgenecloud/xgenecloud
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

XgeneCloud

Instant REST & GraphQL APIs on any Database

68747470733a2f2f62616467656e2e6e65742f6e706d2f6e6f64652f6e65787468747470733a2f2f62616467656e2e6e65742f6e706d2f6c6963656e73652f78632d636f7265

Website Documentation Newsletter Discord Twitter Download App

Supported Databases

  • MySQL, PostgresSQL, MSSQL, SQLite, MariaDb

Usage

Install CLI

$ npm install -g xc-cli

Install & Open GUI (Built in Database & API Client)

$ xc app.install
$ xc app.open

GUI Installation Notes

  • For Mac : Move the installed application to applications folder
  • For Windows : Install into default paths (program files) and open app manually by going to program files.
  • For Linux : Install into default path

Generate REST/GraphQL APIs Instantly

$ xc new project-name

For Help

$ xc man

Demo 1 : Generate REST APIs on existing MySQL Database

chinook-rest-example.gif

Demo 2 : GUI for Database Design and Scaffolding APIs

gui-api-scaffolding.mov.gif

Demo 3 : Generate GraphQL APIs on existing MySQL Database

chinook-graphql-example.gif

What is XgeneCloud ?

XgeneCloud consists of Three simple & amazing products :

  • An Instant API Framework that can generate REST & GraphQL on any database
  • A GUI based fully-featured Database & API Client
    • GUI DB Client enables - Point & Click schema design & schema migrations.
    • GUI API Client to debug APIs.
  • A Hybrid Serverless Framework !
    • All APIs generated can be deployed as Serverless Functions on any Cloud Platform!
    • This is without changing any change to source code generated.

A Simple Overview

venndiagram.png

A Detailed Overview

cloudOverview.png

Table Of Contents

All Demos : Instant APIs on other SQL databases

Database REST APIs Demo GraphQL APIs Demo

Feature Demos : Others

Feature Links Setup API Client History API Client Collections API Performance Test Database Client Design Database Client Migrations Smart Terminal Themes : Dark Themes : Colors Themes : Custom Colors Multi Environment project

Youtube PlayLists

Playlist Link Instant Rest APIs Click here Instant GraphQL APIs Click here Database Client - Desktop App Click here Smart Terminal Click here Themes Click here

Serverless Platforms Supported

Cloud Platform Serverless Serverless Containers AWS fargate.png Fargate GCP cloud-run.png Cloud Run Azure azure-function.png Function App Container Zeit Alibaba alibaba-ask.png Alibaba Serverless Kubernetes

Generating REST APIs for MySQL Database Using CLI

mysql-rest-magento.gif

Asciinema

Generating REST APIs for MySQL Database Using GUI

mysql-rest.gif

Youtube

Generating REST APIs for Postgres Database Using CLI

pg-rest.gif

Asciinema

Generating REST APIs for Postgres Database Using GUI

pg-rest.gif

Youtube

Generating REST APIs for MSSQL Database Using CLI

mssql-rest.gif

Asciinema

Generating REST APIs for MSSQL Database Using GUI

mssql-rest.gif

Youtube

Generating REST APIs for SQLite Database Using CLI

Coming Soon...

Generating REST APIs for SQLite Database Using GUI

sqlite-rest.gif

Youtube

Generating REST APIs for Multiple Databases Using GUI

gui-multi-chinook-rest.gif

Youtube

Scaffolding for a Table

gui-api-scaffolding.mov.gif

Youtube

Scaffolding for a Table : CLI

cli-api-scaffolding-rest.mov.gif

Youtube

Generating REST APIs for Multiple Databases Using CLI

multi-db-demo.gif

Youtube

Generating GraphQL APIs for MySQL Database Using CLI

mysql-graphql.gif

Asciinema

Generating GraphQL APIs for MySQL Database Using GUI

mysql-graphql.mov.gif

Youtube

Generating GraphQL APIs for Postgres Database Using CLI

pg-graphql.gif

Asciinema

Generating GraphQL APIs for Postgres Database Using GUI

pg-graphql.gif

Youtube

Generating GraphQL APIs for MSSQL Database Using CLI

mssql-graphql.gif

Asciinema

Generating GraphQL APIs for MSSQL Database Using GUI

mssql-graphql.gif

Youtube

Generating GraphQL APIs for SQLite Database Using CLI

Coming Soon...

Generating GraphQL APIs for SQLite Database Using GUI

sqlite-graphql.gif

Youtube

Generating GraphQL APIs for Multiple Databases Using GUI

Coming soon...

Generating GraphQL APIs for Multiple Databases Using CLI

Coming soon...

Scaffolding for a Table : GQL

gui-api-scaffolding-gql.mov.gif

Youtube

Scaffolding for a Table : GQL CLI

cli-api-scaffolding-graphql.mov.gif

Youtube

GraphQL : ACL

gui-acl-graphql.mov.gif

Youtube

REST : ACL

gui-acl-rest.mov.gif

Youtube

Swagger

swagger.png

Youtube

Setup

setup.gif

Asciinema

API Client History

api-client-history-demo.mov.gif

Youtube

API Client Collections

api-collection-demo.mov.gif

Youtube

API Performance Test

http-perf.gif

Youtube

Database Client Design

schema-design-demo.mov.gif

Youtube

Database Client Migrations

schema-design-demo.mov.gif

Youtube

Smart Terminal

smart-terminal-demo.mov.gif

Youtube

Themes : Dark

dark-theme-demo.mov.gif

Youtube

Themes : Colors

theme-colors-demo.mov.gif

Youtube

Themes : Custom Colors

theme-color.gif

Youtube

Multi Environment project

gui-multi-env.gif

Youtube

Serverless Deployment

AWS Lambda Deployment

  • Open server/config/default.config.js and set aws.lambda to true and change other cloud serverless platform values as false .

  • Install AWS cli & authenticate

    Refer : https://docs.aws.amazon.com/cli/index.html

  • Open serverless.yml file and do the necessary changes.

  • npm run aws:lambda

Azure Function App

npm install -g azure-functions-core-tools
npm run azure:deploy

GCP Cloud Function

npm run gcp:fn

Zeit Now

  • Install Zeit now library and authenticate using email.

  • Add production environment in config.xc.json

    "envs": {
        "production": {
          "db": [
            {
              "client": "mysql",
              "connection": {
                "host": "localhost",
                "port": "3306",
                "user": "root",
                "password": "password",
                "database": "sakila"
              },
              "meta": {
                "tableName": "_evolutions",
                "dbAlias": "primary"
              }
            }
          ],
          "api" : {}
        }
      },
  • npm run zeit:now

Alibaba Function Compute


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK