Merge branch 'release-2.3.0'
[munter.git] / README.md
1 Munter.py
2 =========
3
4 Helps you speed up your tour and trip planning.
5
6 Disclaimer
7 ----------
8
9 The time calculations produced by this program are not guaranteed to be
10 accurate. Any harm or hazard encountered due to blindly trusting these
11 estimates is your own fault.
12
13 Installation
14 ------------
15
16 If you use pip, then simply `pip install munter.py`.
17
18 If you don't use pip, then download the source code and unpack it into
19 its own directory. You can invoke it directly via `python munter.py
20 [options]`.
21
22 How to use it
23 -------------
24
25 For detailed information, see:
26
27 `./munter.py --help`
28
29 The program supports both imperial and metric, and has four "travel
30 modes" at this time: uphill, flat, downhill, bushwhacking. It also
31 supports a simple fitness modifier: slow, average, fast.
32
33 By default, the output will be the time in hours and minutes of the
34 specified leg. If you prefer, you can use the `-p` switch to get a
35 "prettier" output.
36
37 There is also a GUI mode available, based on WxPython, which can be used
38 by simply invoking like so:
39
40 `./munter.py -g`
41
42 ### Use as a library
43
44 You can also use Munter.py programmatically from Python, like so:
45
46 `import munter`
47 `est = munter.time_calc(distance=3.2, elevation=2300, fitness='slow')`
48
49 This will store a value like "3.64914" in the `est` variable.
50
51 Workflow
52 --------
53
54 My workflow involves planning my tour using tools like ArcGIS or
55 CalTopo. Then, I take the stats between each leg (distance, vertical
56 gain/loss) of the tour and run them through Munter.py and record its
57 output to my field notebook.
58
59 The text-based "pretty" format can be directly transferred to e.g. the
60 format used by SnowPit Technologies' "Avalanche Field Notebook" or your
61 own personal format (e.g. RitR No. 471).
62
63 Future plans
64 ------------
65
66 * Better documentation
67
68 Version History
69 ---------------
70
71 - 2.3.0 (Jul 2020)
72
73 Implement 'auto-start in GUI' feature.
74
75 The program tries to detect whether it was invoked from a terminal or
76 not, and if not, it will automatically switch to GUI mode. Useful for
77 invocation via e.g. dmenu(1).
78
79 - 2.2.1 (Jun 2020)
80
81 Complete fixes recommended by pylint(1).
82
83 - 2.2.0 (Jun 2020)
84
85 Implement GUI mode.
86
87 - 2.1.0 (Jun 2020)
88
89 Implement fitness modifier. Make some text changes and other
90 miscellaneous and minor improvements.
91
92 - 2.0.1 (Jun 2020)
93
94 README improvement.
95
96 - 2.0.0 (Jun 2020)
97
98 Package for distribution as a standalone program (and library).
99
100 - 1.0.2 (Jun 2020)
101
102 A few small bugfixes.
103
104 - 1.0.1 (Jun 2020)
105
106 Add LICENSE and README.
107
108 - 1.0.0 (Jun 2020)
109
110 First released version. Includes sensible defaults and a rudimentary CLI
111 "GUI".
112
113 - pre-1.0.0 (Mar 2017)
114
115 In use privately/internally since 2017.