protoargs
shodohflo
protoargs | shodohflo | |
---|---|---|
7 | 1 | |
7 | 14 | |
- | - | |
1.3 | 7.3 | |
about 1 year ago | about 1 month ago | |
Python | Python | |
BSD 2-clause "Simplified" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
protoargs
-
Protoargs: configuration based arguments parsing
Go implementation page (how to use in golang) https://github.com/ashlander/protoargs/tree/AZ_golang/doc/go
-
Question: Custom argument parsing with flag ?
More info on how that will look like - https://github.com/ashlander/protoargs May be that would be of interest for you too
-
Configuration based arguments parser on Rust
Documentation https://github.com/ashlander/protoargs/tree/AZ_rust
-
Configuration based arguments parsing
Protoargs script uses arguments parser which is generated by itself. This is the configuration for protoargs script and code generated arguments parser.
-
Configuration based argument parsing
That's how protoargs project appeared. Which converts special protobuf configuration into a ready-to-use arguments parser. And I do use it a lot in my projects. The best example was to use it in multiple commands CLI , e.g. you can implement your own "git init/clone/commit/..." easily. And protobuf allows preserving compatibility between versions. Recently I have used it inside gamedev project with a potentially huge number of commands, and now it takes me 5-10 min for new command to be added, and ~0 min to add new arguments to existing command and start using them in the code.
-
My Gamedev Yak Shaving. Part 3. Yarn Spinner and custom commands parsing?
I have added the project to github, so anyone could use it, called protoargs . It supports C++ and Python, but there are plans to add more programming languages, so to make arguments parsing you would need only learn how to create a configuration. When I will have enough karma points I would make a post in the opensource subreddit.
shodohflo
What are some alternatives?
docopt-ng - Humane command line arguments parser. Now with maintenance, typehints, and complete test coverage.
protogen-python - The protogen package makes it easy to write protoc plugins in Python
jarro2783/cxxopts - Lightweight C++ command line option parser
aiofiles - File support for asyncio
goutil - 💪 Helper Utils(700+): int, byte, string, array/slice, map, struct, dump, convert/format, error, web/http, cli/flag, OS/ENV, filesystem, system, test/assert, time and more. Go 常用的一些工具函数:数字,字符串,数组,Map,结构体,反射,文本,文件,错误,时间日期,特殊处理,格式化,常用信息获取等等
trio - Trio – a friendly Python library for async concurrency and I/O
argparse - Argparse for golang. Just because `flag` sucks
rear_view_rpz - Turn your recursive DNS (BIND) server into a network investigation enabler with DnsTap and RPZ.
placeholder-image-generator - A small python tool that generates placeholder images with specific dimensions and color
fastapi - FastAPI framework, high performance, easy to learn, fast to code, ready for production
Protobuf - Protocol Buffers - Google's data interchange format
python-argparse-subdec - Create argparse subcommands with decorators.