Settings

Theme

SHOW HN: REST, GraphQL and gRPC Services via NPM or Docker

4 points by sudowing 5 years ago · 0 comments · 2 min read


I've spent a much of 2020 developing a project that auto provisions REST, GraphQL & gRPC services that support CRUD operations (with full validation) to tables, views and materialized views of several popular databases (postgres, postgis, mysql, sqlite).

The project is named `Service-Engine`, and it can be implemented via an NPM package and as a Docker Container.

The README on GitHub has extensive documentation on the setup & features, so here I'll just list the primary features: full CRUD, geoquery (bbox, radius, custom wkt polygon) complex_resources (aggregate & sub queries), middleware (access the query before db execution), permissions (table/view level CRUD configs), field redaction (enable query support -- without publication), schema migrations, auto generated openapi3/swagger docs, auto generated proto file, full validation.

GitHub Source https://github.com/sudowing/service-engine

Forkable Docker Implementation https://github.com/sudowing/service-engine-template

I've also put together a few videos showing how to configure Docker app & how several features work. Videos have been produced covering the following topics:

Quick Start https://youtu.be/zwpPLM5LPgo

Insomnia Import https://youtu.be/PzV19iHs-IU

Key REST Endpoints https://youtu.be/sfmAO4pWC14

Permissions https://youtu.be/4ptSSnaqvqw

API Response Metadata https://youtu.be/fjuTBT08ELE

Query Context https://youtu.be/wITo_oHjSvM

SQL Operators https://youtu.be/698lXrclFIs

CRUD Operations https://youtu.be/KUDqqlxb26M

Debug Mode https://youtu.be/LjRpv6JZxhI

Complex Resources (subqueries & aggregate queries) https://youtu.be/rzhQlPAoVeI

Middleware & Redactions https://youtu.be/AopYx2XM3yc

GraphQL Playground and Geoqueries https://youtu.be/8y5BMjHVRUA

gRPC Service (CRUD & Geoqueries) https://youtu.be/HFzwwLIqrfQ

DB Schema Migrations https://youtu.be/84D8_--K5cs

GIS DB Setup & Load https://youtu.be/UjvvPgdT_Y8

No comments yet.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection