RustyBeer is a CLI tool written in Rust, to calculate values used in the process of brewing beer.
If you don't already have the toolset installed, you will first need to install Rust. From the root of the repository, run the following command:
cargo build
You can now run it with:
cargo run <subcommand>
- src - The folder containing all source code
- calculators - The folder containing calculators to be used in lib or CLI tool
- commands - The folder containing subcommands for CLI
- main.rs - The file containing the main function
- Cargo.toml - The file containing build and dependency infomation
- LICENSE - The file containing the terms that this code package is released under
- README.md - The file you are currently reading
- CONTRIBUTING.md - Contribution guidelines for this repository
Beer brewing has a lot of acronyms that have a meaning. This table is to help out with figuring out what everything means:
Acronum | Description |
---|---|
ABV | Alcohol By Volume |
OG | Original Gravity |
FG | Final Gravity |
SG | Specific Gravity |
IBU | International Bittering Units |
Below is a table of the features currently implemented.
Implemented | Function | Description | Usage |
---|---|---|---|
✅ | ABV | Calculates ABV from OG and FG or FG from OG and ABV | abv --og <Original gravity> (--fg <Final gravity>) (--abv <Alcohol by volume>) |
⏳ | Boil-off Gravity | Calculates the volume needed to be boiled down to for a desired SG | `boil_off --current_gravity <current_gravity> --wort_volume <wort_volume> <--target_volume <target_volume> |
✅ | Dilution | Calculates the SG after dilution | diluting --sg <Current specific gravity> --cv <Current volume> --tv <Target volume> |
✅ | Num Of Bottles | Calculates the number of bottles required for a given volume | num_of_bottles --volume <volume> |
✅ | Priming | Beer Priming Calculator | priming --temp <Beer temperature> --amount <Beer volume> --co2_volumes <co2_volumes> |
✅ | SG Correction | Corrects SG reading according to the difference between the measurement temperature and the calibration temperature | sg_correction --sg <Specific gravity reading> --ct <Calibration temperature> --mt <Measurement temperature> |
✅ | Beer style | Finds beer styles matching given parameters | beer_style (--og <Original gravity>) (--fg <Final gravity>) (--abv <Alcohol by volume>) (--ibu <International bittering units> (--color <SRM color>) |
This list will expand as ideas and suggestions come in.
See Issues
Thanks goes to these wonderful people (emoji key):
drodil 💻 |
mlatief 💻 |
Joseph Russell 💻 |
flauntingspade4 💻 |
Ilakkiyan Jeyakumar 💻 |
Tom Milligan 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!
See CONTRIBUTING.md