Skip to content

Commit c69cddd

Browse files
authored
v0.8: Improve configuration, add new report command, add group_by arguments and more... (#5)
* refactor(wip): work on report (list -s) * refactor(wip): work on config refactor with more customizations support * wip(config): improve config support * feat: worked on many features - rework auto_start + add confirm flags args for some commands - implement group_by for list command - add support for confirm on cancel and delete - improve configuration * test: have Claude improve test coverage + update old broken tests after config update * chore: run cargo fmt to fix code styling * fix: confirm was not evaluated in modify command + fix cli_smoke.rs which was not using the temp config file * docs: update README
1 parent 2788857 commit c69cddd

32 files changed

Lines changed: 2120 additions & 639 deletions

README.md

Lines changed: 58 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ It relies on [`boat-lib`](https://github.com/coko7/boat-lib) for core functions.
3131
- [Install with a bundled version of SQLite](#install-with-a-bundled-version-of-sqlite)
3232
- [⚙️ Configuration](#%EF%B8%8F-configuration)
3333
- [✨ Usage](#-usage)
34+
- [🧠 (mostly) Brain made](#-mostly-brain-made)
3435

3536
## 🚀 Demo
3637

@@ -96,14 +97,45 @@ database_path = "/home/<user>/.config/boat/boat.db"
9697
```
9798

9899
You can override the default configuration file path by setting the `BOAT_CONFIG` environment variable.
100+
Here is the full default configuration:
101+
102+
```toml
103+
database_path = "/home/<user>/.config/boat/boat.db"
104+
period = "all"
105+
format = "plain"
106+
107+
[commands.new]
108+
auto_start = false
109+
110+
[commands.start]
111+
quick_start = true
112+
113+
[commands.cancel]
114+
confirm = true
115+
116+
[commands.edit]
117+
show_instructions = true
118+
show_activity_definitions = true
119+
confirm = true
120+
121+
[commands.delete]
122+
confirm = true
123+
124+
[commands.list]
125+
period = "month"
126+
group_by = "day"
127+
128+
[commands.report]
129+
period = "day"
130+
```
99131

100132
## ✨ Usage
101133

102134
If you have ever used [`bartib`](https://github.com/nikolassv/bartib), then `boat` is going to feel very familiar.
103135
Try `boat help` for a quick list of commands:
104136

105137
```help
106-
boat 0.6.0
138+
boat 0.8.0
107139
108140
Basic Opinionated Activity Tracker
109141
@@ -116,17 +148,20 @@ Commands:
116148
cancel Cancel the current activity
117149
pause Pause/stop the current activity
118150
modify Modify an activity
119-
edit Edit activity logs manually
151+
edit Edit activity logs as text in an external editor
120152
delete Delete an activity
121153
get Get the current activity
122-
list List activities
154+
list List activity logs
155+
report Show activity summaries
123156
help Print this message or the help of the given subcommand(s)
124157
125158
Options:
126159
-v, --verbose... Increase logging verbosity
127160
-q, --quiet... Decrease logging verbosity
128161
-h, --help Print help
129162
-V, --version Print version
163+
164+
Made by @coko7 <contact@coko7.fr>
130165
```
131166

132167
> [!TIP]
@@ -141,6 +176,7 @@ Options:
141176
> - delete: `d`, `del`, `delete`, `rm`, `rem`, `remove`
142177
> - get: `g`, `get`
143178
> - list: `l`, `ls`, `list`
179+
> - report: `r`, `rep`, `report`
144180
> - help: `h`, `help`, `-h`, `--help`
145181
>
146182
> Prefer using the full length command names in scripts as they are more explicit and unlikely to be changed (unlike shorter aliases).
@@ -152,3 +188,22 @@ Like `stop` would have been a better command than `pause` but since it shares th
152188
Maybe I will drop this in the future, let's see.
153189

154190
_I have included some fallback in case you type `stop`/`remove` instead of `pause`/`delete` 👀_
191+
192+
## 🧠 (mostly) Brain made
193+
194+
**This project was NOT vibe-coded BUT AI is still involved in some parts of it.**
195+
196+
I think generating big portions of code using AI can be justified in some contexts, and I am not opposed to it if done well. But, I care about this project too much to vibe code it :)
197+
198+
Still, **AI is used** in this project and here's where:
199+
200+
- **Generating tests:** Because it's something I always skip so I would rather have some AI generated tests than none at all.
201+
- **Micro-improvements:** I have used AI as an advisor to improve some bits of code here and there. Big refactors or new features are done by my hand though. _(This is why this tool breaks so often I guess 💀)_
202+
203+
<a href="https://brainmade.org/">
204+
<picture>
205+
<source media="(prefers-color-scheme: dark)" srcset="https://brainmade.org/white-logo.svg">
206+
<source media="(prefers-color-scheme: light)" srcset="https://brainmade.org/black-logo.svg">
207+
<img alt="brainmade" src="https://brainmade.org/white-logo.svg">
208+
</picture>
209+
</a>

0 commit comments

Comments
 (0)