• Stars
    star
    288
  • Rank 138,414 (Top 3 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created about 4 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Generate CRUD gRPC backends from single YAML description.

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

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