Overview
MyCoffee is a command-line tool for coffee enthusiasts who love brewing with precision. It helps you calculate the perfect coffee-to-water ratio for various brewing methods, ensuring you brew your ideal cup every time-right from your terminal.
| PyPI Counter | |
| Github Stars |
| Branch | main | dev |
| CI |
| Code Quality |
Installation
Source Code
- Download Version 2.1 or Latest Source
pip install .
PyPI
- Check Python Packaging User Guide
pip install mycoffee==2.1
Usage
ℹ️ You can use mycoffee or python -m mycoffee to run this program
Version
> mycoffee --version
2.1
Info
> mycoffee --info
__ __ ____ __ __
| \/ | _ _ / ___| ___ / _| / _| ___ ___
| |\/| || | | || | / _ \ | |_ | |_ / _ \ / _ \
| | | || |_| || |___ | (_) || _|| _|| __/| __/
|_| |_| \__, | \____| \___/ |_| |_| \___| \___|
|___/
__ __ ____ _
\ \ / / _ |___ \ / |
\ \ / / (_) __) | | |
\ V / _ / __/ _ | |
\_/ (_)|_____|(_)|_|
MyCoffee is a command-line tool for coffee enthusiasts who love brewing with precision.
It helps you calculate the perfect coffee-to-water ratio for various brewing methods,
ensuring you brew your ideal cup every time-right from your terminal.
Repo : https://github.com/sepandhaghighi/mycoffee
Method
> mycoffee --method=v60
__ __ _ _ ___ _____ ____ ____ ____ ____
( \/ )( \/ ) / __)( _ )( ___)( ___)( ___)( ___)
) ( \ / ( (__ )(_)( )__) )__) )__) )__)
(_/\/\_) (__) \___)(_____)(__) (__) (____)(____)
Date: 2025-09-10 17:56
Mode: Water --> Coffee
Method: `v60`
Cups: 1
Coffee:
- Cup: 15 g
- Total: 15 g
Water:
- Cup: 250 g
- Total: 250 g
Ratio: 3/50 (0.06)
Strength: Medium
Grind: 550 um (Medium-Fine)
Temperature: 91 C
Message: V60 method
- Methods List
mycoffee --methods-list
Mode
Water to Coffee
> mycoffee --method=v60 --mode="water-to-coffee" --water=300
__ __ _ _ ___ _____ ____ ____ ____ ____
( \/ )( \/ ) / __)( _ )( ___)( ___)( ___)( ___)
) ( \ / ( (__ )(_)( )__) )__) )__) )__)
(_/\/\_) (__) \___)(_____)(__) (__) (____)(____)
Date: 2025-09-10 17:56
Mode: Water --> Coffee
Method: `v60`
Cups: 1
Coffee:
- Cup: 18 g
- Total: 18 g
Water:
- Cup: 300 g
- Total: 300 g
Ratio: 3/50 (0.06)
Strength: Medium
Grind: 550 um (Medium-Fine)
Temperature: 91 C
Message: V60 method
Coffee to Water
> mycoffee --method=v60 --mode="coffee-to-water" --coffee=12
__ __ _ _ ___ _____ ____ ____ ____ ____
( \/ )( \/ ) / __)( _ )( ___)( ___)( ___)( ___)
) ( \ / ( (__ )(_)( )__) )__) )__) )__)
(_/\/\_) (__) \___)(_____)(__) (__) (____)(____)
Date: 2025-09-10 17:56
Mode: Coffee --> Water
Method: `v60`
Cups: 1
Coffee:
- Cup: 12 g
- Total: 12 g
Water:
- Cup: 200 g
- Total: 200 g
Ratio: 3/50 (0.06)
Strength: Medium
Grind: 550 um (Medium-Fine)
Temperature: 91 C
Message: V60 method
Ratio
> mycoffee --method=v60 --mode="ratio" --coffee=18 --water=300
__ __ _ _ ___ _____ ____ ____ ____ ____
( \/ )( \/ ) / __)( _ )( ___)( ___)( ___)( ___)
) ( \ / ( (__ )(_)( )__) )__) )__) )__)
(_/\/\_) (__) \___)(_____)(__) (__) (____)(____)
Date: 2025-09-10 17:56
Mode: Water & Coffee --> Ratio
Method: `v60`
Cups: 1
Coffee:
- Cup: 18 g
- Total: 18 g
Water:
- Cup: 300 g
- Total: 300 g
Ratio: 3/50 (0.06)
Strength: Medium
Grind: 550 um (Medium-Fine)
Temperature: 91 C
Message: V60 method
Customize
ℹ️ You can run mycoffee --coffee-units-list to view the supported coffee units
ℹ️ You can run mycoffee --water-units-list to view the supported water units
> mycoffee --method=chemex --water=20 --cups=3 --coffee-ratio=2 --water-ratio=37 --coffee-unit="t oz" --water-unit="fl oz" --grind=750 --temperature=88
__ __ _ _ ___ _____ ____ ____ ____ ____
( \/ )( \/ ) / __)( _ )( ___)( ___)( ___)( ___)
) ( \ / ( (__ )(_)( )__) )__) )__) )__)
(_/\/\_) (__) \___)(_____)(__) (__) (____)(____)
Date: 2025-09-10 17:56
Mode: Water --> Coffee
Method: `chemex`
Cups: 3
Coffee:
- Cup: 1.028 t oz
- Total: 3.084 t oz
Water:
- Cup: 20 fl oz
- Total: 60 fl oz
Ratio: 2/37 (0.054)
Strength: Medium
Grind: 750 um (Medium)
Temperature: 88 C
Message: Chemex method
Save
ℹ️ File format valid choices: [text, json, yaml]
ℹ️ The default file format is text
> mycoffee --method=chemex --water=20 --cups=3 --coffee-ratio=2 --water-ratio=37 --save-path="profile1.txt" --save-format="text"
Parameters
| Parameter | Description | Type | Default |
|---|---|---|---|
--mode |
Specifies the conversion mode | String | water-to-coffee |
--method |
Specifies the coffee brewing method | String | custom |
--water |
Sets the amount of water in each cup | Positive float | 240 |
--coffee |
Sets the amount of coffee in each cup | Positive float | 14.118 |
--cups |
Indicates the number of cups | Positive integer | 1 |
--grind |
Grind size (um) | Positive integer | 700 |
--temperature |
Brewing temperature | Float | 90 |
--coffee-ratio |
Coefficient for the coffee component in the ratio | Positive float | 1 |
--water-ratio |
Coefficient for the water component in the ratio | Positive float | 17 |
--message |
Extra information about the brewing method | String | Custom brewing method |
--digits |
Number of digits up to which the result is rounded | Integer | 3 |
--coffee-unit |
Coffee unit | String | g |
--water-unit |
Water unit | String | g |
--temperature-unit |
Temperature unit | String | C |
--save-path |
File path to save the output | String | -- |
--save-format |
Format to save the output | String | text |
Issues & Bug Reports
Just fill an issue and describe it. We'll check it ASAP!
- Please complete the issue template
References
1- Coffee to water ratio calculator
2- V60 Brew Guide
3- How to Brew Coffee with a Chemex
4- Using French press for perfect coffee
5- How to Brew the Perfect Cup of Siphon Coffee
6- Using Espresso Brew Ratios
7- My Best Coffee Recipes of 2022
8- Auto Drip Brewing Guide
9- Guide To Cold Brew
10- Cold Brew Concentrate Recipe
11- How to Make Coffee in a Moka Pot
12- How to Make Turkish Coffee at Home
13- How to Cup Coffee
14- Tetsu Kasuya AeroPress Recipe
15- All about the intervals
16- Clever Dripper; Square Mile Coffee
17- AeroPress Product User Manuals
18- RapidTables - Weight Converter
19- Whole bean to ground coffee calculator
20- Weight to Volume Converter for Recipes
21- How Much Coffee per Cup?
22- Weight Calculator
23- Volume Conversion Calculator - Inch Calculator
24- Metric Conversion Charts and Calculators
25- Coffee grind size chart
26- The best temperature to brew coffee
27- How to Brew Coffee with a Syphon
28- Guide To Home Coffee Makers
29- Can you brew coffee with warm water?
30- How to Brew Coffee Using a Cezve
31- Coffee cupping
32- The Latest Method to Brew Coffee with Your Clever Dripper
33- How to Make Vietnamese Coffee with Traditional Phin Drip Filter
34- Kalita Wave 185 Brew Guide
35- How to Make the Perfect Instant Coffee, Hot or Iced
36- How to make the perfect coffee
Show Your Support
Star This Repo
Give a ⭐️ if this project helped you!
Donate to Our Project
Bitcoin
1KtNLEEeUbTEK9PdN6Ya3ZAKXaqoKUuxCyEthereum
0xcD4Db18B6664A9662123D4307B074aE968535388Litecoin
Ldnz5gMcEeV8BAdsyf8FstWDC6uyYR6pgZDoge
DDUnKpFQbBqLpFVZ9DfuVysBdr249HxVDhTron
TCZxzPZLcJHr2qR3uPUB1tXB6L3FDSSAx7Ripple
rN7ZuRG7HDGHR5nof8nu5LrsbmSB61V1qqBinance Coin
bnb1zglwcf0ac3d0s2f6ck5kgwvcru4tlctt4p5qefTether
0xcD4Db18B6664A9662123D4307B074aE968535388Dash
Xd3Yn2qZJ7VE8nbKw2fS98aLxR5M6WUU3sStellar
GALPOLPISRHIYHLQER2TLJRGUSZH52RYDK6C3HIU4PSMNAV65Q36EGNLZilliqa
zil1knmz8zj88cf0exr2ry7nav9elehxfcgqu3c5e5Coffeete
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased
2.1 - 2025-10-08
Added
- 2 new methods
- Kalita wave
- Instant coffee
get_date_nowfunctionformat_datefunction
Changed
- Test system modified
README.mdupdated
2.0 - 2025-08-27
Added
YAMLformatratiomode
Changed
- Test system modified
README.mdupdatedcalc_coffeefunction renamed tocalculate_coffeecalc_waterfunction renamed tocalculate_waterrunfunction renamed torun_program
1.9 - 2025-06-21
Added
- 2 new methods
- Clever dripper
- Phin filter
--coffeeargument--modeargument
Changed
- Test system modified
README.mdupdatedMETHODS.mdupdated
1.8 - 2025-05-02
Changed
get_resultfunction modifiedfilter_paramsfunction modifiedmycoffee_infofunction modifiedcoffeeparameter splitted tocoffee[cup]andcoffee[total]waterparameter splitted towater[cup]andwater[total]check_ratio_limitsfunction parameters updatedcheck_temperature_limitsfunction parameters updatedcheck_grind_limitsfunction parameters updatedcalc_coffeefunction parameters updated- Test system modified
- Warning messages updated
Python 3.6support dropped
1.7 - 2025-03-26
Added
ratioparameterstrengthparameter
Changed
- Python typing features added to all modules
- Test system modified
README.mdupdated
1.6 - 2025-03-12
Added
--save-pathargument--save-formatargument
Changed
- Warning functions modified
- Result functions modified
- Input case sensitivity bug fixed
- Temperature bug fixed
- Test system modified
README.mdupdated
1.5 - 2025-02-26
Added
--infoargument--ignore-warningsargument--temperature-unitargument--temperature-units-listargument
Changed
- Test system modified
README.mdupdated
1.4 - 2025-02-15
Added
--temperatureargument- Temperature upper limit
- Temperature lower limit
Changed
--infoargument renamed to--message- Warning messages updated
README.mdupdatedMETHODS.mdupdated
1.3 - 2025-01-31
Added
get_grind_typefunctionvalidate_positive_intfunctionvalidate_positive_floatfunction
Changed
README.mdupdatedcheck_ratio_limitsfunction bug fixed- String templates modified
- Test system modified
1.2 - 2025-01-13
Added
- 2 new water units
- Troy Pounds (
t lb) - Pennyweight (
dwt)
- Troy Pounds (
- 2 new coffee units
- Troy Pounds (
t lb) - Pennyweight (
dwt)
- Troy Pounds (
--grindargument- Grind upper limit
- Grind lower limit
check_grind_limitsfunction
Changed
README.mdupdatedMETHODS.mdupdated
1.1 - 2025-01-02
Added
- 5 new water units
- Troy Ounce (
t oz) - Grain (
gr) - Carats (
ct) - Cubic Centimeters (
cc) - Centiliters (
cl)
- Troy Ounce (
- 3 new coffee units
- Troy Ounce (
t oz) - Grain (
gr) - Carats (
ct)
- Troy Ounce (
Changed
README.mdupdated
1.0 - 2024-12-17
Added
- 3 new water units
- Pint (
pt) - Quart (
qt) - Fluid Ounce (
fl oz)
- Pint (
Changed
README.mdupdated
0.9 - 2024-12-06
Added
- 4 new water units
- Tablespoon (
tbsp) - Teaspoon (
tsp) - Dessertspoon (
dsp) - Cup (
cup)
- Tablespoon (
0.8 - 2024-11-29
Added
- 1 new coffee unit
- Cup (
cup)
- Cup (
- 6 new water units
- Milliliter (
ml) - Liter (
l) - Ounce (
oz) - Pound (
lb) - Milligram (
mg) - Kilogram (
kg)
- Milliliter (
convert_waterfunctionshow_water_units_listfunction--water-unitargument
Changed
- Test system modified
README.mdupdated
0.7 - 2024-11-21
Added
- 4 new coffee units
- Coffee beans (
cb) - Tablespoon (
tbsp) - Teaspoon (
tsp) - Dessertspoon (
dsp)
- Coffee beans (
convert_coffeefunction
Changed
- GitHub actions are limited to the
devandmainbranches
0.6 - 2024-10-18
Added
show_coffee_units_listfunction--coffee-unitargument
Changed
- Test system modified
- Cups bug fixed
calc_coffeefunction updatedREADME.mdupdatedPython 3.13added totest.yml
0.5 - 2024-10-08
Added
- Ratio upper limit
- Ratio lower limit
check_ratio_limitsfunction
Changed
- Test system modified
print_messagefunction renamed toprint_result
0.4 - 2024-10-01
Added
- 4 new methods
- AeroPress standard
- AeroPress concentrate
- AeroPress inverted
- Steep-and-release
--digitsargument
Changed
README.mdupdated- Test system modified
filter_paramsfunction updated
0.3 - 2024-09-24
Added
- Logo
- 4 new methods
- Ristretto
- Lungo
- Turkish
- Cupping
0.2 - 2024-09-17
Added
- 5 new methods
- Pour-over
- Auto drip
- Cold brew
- Cold brew concentrate
- Moka pot
is_intfunctionfilter_paramsfunction
Changed
README.mdupdated--coffee-ratiotype changed frominttofloat--water-ratiotype changed frominttofloatcoffee_calcfunction renamed tocalc_coffeeprint_messagefunction updated- Test system modified
0.1 - 2024-09-02
Added
- 6 new methods
- V60
- Espresso
- Chemex
- French-press
- Siphon
- Custom
Metadata
Release files for mycoffee 2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mycoffee-2.1.tar.gz | 26.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mycoffee-2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.7 kB
Release files / mycoffee-2.1.tar.gz
| Download URL | mycoffee-2.1.tar.gz |
|---|---|
| Size | 26.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4bebfdc27afeb340e06d4bc07d6b7c3eba47d9447b63fd74894af8a8701918c1
|
|
BLAKE2b-256 checksum How to use checksums |
b960564f2b5aa49d988f4698943ec7e4422309bf737aa7d631e8820602922123
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|
Release files / mycoffee-2.1-py3-none-any.whl
| Download URL | mycoffee-2.1-py3-none-any.whl |
|---|---|
| Size | 17.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
af51f270e028f68958a9a4d1cc02610bb21eaa79f37054c81b848bb5879abd7e
|
|
BLAKE2b-256 checksum How to use checksums |
4672d724b5410b7dfae3dc3f9f95c5617ce80ebc9943c175b39988e16721d988
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|