Tao is a protocol first micro-service approach and toolset.
This project is in very early development stage, things may changes frequently.
The Tao approach includes
- A command tool
tao - A simple ioc container for service locate
- Several support packages
github.com/miraclew/tao/pkg
This project is inspired by a Youtube presentation
tao command is the core tool to generate code/documents/sql etc.
Execute go get -u github.com/miraclew/tao/cmd/tao to install tao command
sub-commands
tao protogenerate a skeleton .proto Google ProtoBuffer syntax filetao apigenerate api/event/client go codetao svcgenerate service implementation go code, include service, handler etc.tao sqlgenerate SQL schema of model message in .proto filetao docgenerate OpenAPI v3 filestao dartgenerate Flutter/Dart client codetao kotlingenerate Android/Kotlin client sdk.tao swiftgenerate iOS/Swift client sdk.
We introduce a locator package as the IOC container.
- Services register to the locator
- Service obtain it's dependency services from locator
- Write a service proto file
- Generate api/event/client code
- Implement service
- Support JAVA project
