sashabaranov / pike

Generate CRUD gRPC backends from single YAML description.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pike

Generate CRUD gRPC backends from single YAML description.

Check out Playground!

Pike generates:

  • gRPC Protobuf service description with basic Create, Read, Update, Delete operations
  • Go implementation of gRPC service
    • Supports all CRUD SQL queries
    • No additional framework usage. Only depends on grpc and pq
    • TLS support
  • PostgreSQL migration(CREATE TABLE) compatible with migrate tool

Usage

Install: go get github.com/sashabaranov/pike

Run: pike project.yaml

Example

Generated project can be found here

Philosophy

A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a working simple system.

— Gall's Law

Pike let's you create simple systems quickly and does not impose any limitations afterwards.

Pike's name originates from Russian fairy tale

— По щучьему веленью, По моему хотенью — выстройся каменный дворец с золотой крышей…

About

Generate CRUD gRPC backends from single YAML description.

License:Apache License 2.0


Languages

Language:Go 93.0%Language:Shell 7.0%