nbb-habits/README.md
2023-06-16 20:11:36 +10:00

53 lines
1.8 KiB
Markdown

# uHabits Terminal
A Tiny TUI that is compatible with [Loop Habits](https://github.com/iSoron/uhabits).
### State of the Project
Until [this](https://github.com/iSoron/uhabits/issues/702) issue gets resolved, I have low desire to work on this further. In it's current state, it doesn't save changes, but it is able to import CSV exports from uHabits.
If I'm still on android and the issue gets resolved, I'd integrate with their db and server as necessary.
If I move to a linux phone I'll write my own server implementation to keep my habits in sync across my devices.
### Run
Export your habits from Loop Habit as a CSV.
Place the extracted files somewhere available to you
Edit line 25 of `src/habits/index.cljs` to point to your path (relative or exact). My path is currently `./data/Loop Habits CSV 2023-05-30/Checkmarks.csv`
#### Nix
I'm sorry Nix fam, I haven't packaged this yet, it's in the TODOs.
```
nix develop
npm install
./node_modules/.bin/nbb src/habits/index.cljs
```
##### Without Nix
You need to install `nbb`, which gets installed via `nodejs`, so you'll need that too. There are also some Babashka dependencies so you'll need to have `bb` available on your path too.
### TODO
- Save changes to file
- Parse date
- Add all entries to current date
- Read atoms from config
- Tests
- Types
- Colors for each habit
- Help menu
- Scroll bar for habits
- Save changes to file
- Add new habit
- Delete / Archive habit
- Make compatible with db
- Integrating Loop Habit "scores"
- Notifications
- Package with Nix so that it can run anywhere
### Built With
- [nbb](https://github.com/babashka/nbb)
- [ink](https://github.com/vadimdemedes/ink#useinputinputhandler-options)
- [reagent](https://github.com/reagent-project/reagent)
- [parse-csv](https://github.com/adaltas/node-csv/tree/master/packages/csv-parse/)
- [nix](https://nixos.org/)