0x000000 / team7-domain

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PeerStreet Hackathon 2020 — Domain Model

Our main idea was simple: we want to show that it's possible to separate domain model from implementation and maintain this model as the first-class project. We created 3 repos connected:

  1. Domain model (Protobuf 3 + Rake task to build Ruby gem and Js/Ts package): 0x000000/team7-domain
  2. Front-end (Vue-cli + typescript): Kaciaryna/team7-frontend
  3. Back-end (Ruby + grpc): 0x000000/team7-backend

Project Structure

This is an easy domain model built on top of the protobuf 3, descriptions include four models (User, Loan, Address, and WebClient) and one definition for the grpc server (LoanService).

  • definitions/* — the main folder for the proto models..
  • definitions/api/* — descriptions for the grpc server interface.
  • templates — folder for simple lib stubs: templates/ruby includes simple scaffold for the Ruby gem and templates/typescript contains the stub for js package with ts bindings.
  • build/* — autogenerated folder for final libs. Do not edit.
  • Rakefile — the main script which creates libs based on templates and compiles proto files to create functional libs for target languages into the build folder.

Setup

  1. $ brew install protobuf
  2. $ brew install protoc-gen-grpc-web --ignore-dependencies
  3. $ bundle && yarn
  4. $ rake build:all — to rebuild libs

About


Languages

Language:JavaScript 91.0%Language:Ruby 9.0%