Easyp
easyp is a cli tool for workflows with proto files.
For now, it's just linter and package manager, but... who knows, who knows...
Just testing
Official site
https://easyp.tech/
Telegram chat
https://t.me/easyptech
Install
Build from source
- Clone repository
- Build
go build ./cmd/easyp
Install from github
go install github.com/easyp-tech/easyp/cmd/easyp@latest
Linter
easyp support buf's linter rules.
Usage
easyp lint -cfg example.easyp.yaml
Package manager
Usage
To usage easpy as a package manager use mod download command:
easyp -cfg example.easyp.yaml mod download
Your config file has to contains deps section which is list of repositories with proto files and its version (optional).
For example:
deps:
- github.com/googleapis/googleapis@common-protos-1_3_1
NOTE: Use only git tag or full hash of commit version.
By default, easyp use $HOME/.easyp dir to storage cache and downloaded modules, you could override it with EASYPPATH env var.
Auto-completion
zsh auto-completion
- Add the following line to your ~/.zshrc startup script:
source <(easyp completion zsh)
- Re-launch your shell or run:
source ~/.zshrc
Bash auto-completion
- Install bash-completion and add the software to your
~/.bashrc.
- Add the following line to your ~/.bashrc startup script:
source <(easyp completion bash)
- Re-launch your shell or run:
source ~/.bashrc
Roadmap
- Implement support for
buf.work.yaml config
- Calc hash sum, store it and compare (i.e go.sum)
- Code generation