Skip to content

Commit

Permalink
Refine readme file
Browse files Browse the repository at this point in the history
  • Loading branch information
daya0576 committed Jan 4, 2025
1 parent 6444be7 commit 0d70329
Showing 1 changed file with 44 additions and 11 deletions.
55 changes: 44 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,28 @@ A self-hosted habit tracking app without "Goals"
<img src='https://github.com/daya0576/beaverhabits/assets/6239652/c0ce98cf-5a44-4bbc-8cd3-c7afb20af671' width='250'>
<img src='https://github.com/daya0576/beaverhabits/assets/6239652/516c19ca-9f55-4c21-9e6d-c8f0361a5eb2' width='250'>

# Table of contents:

- [Derivatives](#derivatives)
- [Getting Started](#getting-started)
- [Cloud Service](#cloud-service)
- [Self-Hosting](#self-hosting)
- [Unraid](#unraid)
- [Ship with Docker](#ship-with-docker)
- [Options](#options)
- [Development](#development)
- [Features](#features)
- [Streaks](#streaks)
- [Import](#import)
- [Standalone Mode](#standalone-mode-for-ios-web-application)
- [Reorder Habits](#reorder-habits)
- [REST APIs](#rest-apis)
- [Future Plans](#future-plans)


# Derivatives

- [HabitDeck](https://github.com/nov1n/HabitDeck): Turn your Stream Deck into an interactive habit tracker
- [Unraid App](https://unraid.net/community/apps/c/tools?q=beaver+habit#r): An out-of-the-box community App for your Unraid server
- [Apple Shortcut](https://github.com/daya0576/beaverhabits/discussions/50#discussion-7746029): A shortcut for sharing the App on iPhone
- [Home Assistant Switch](https://github.com/daya0576/beaverhabits/issues/55#issuecomment-2569685687): A switch for home assistant to mark a habit as done
- ...
Expand All @@ -28,26 +46,42 @@ A self-hosted habit tracking app without "Goals"

## Self-Hosting

### Ship with Docker
### Unraid

Simply search for "Beaver Habit Tracker" in the Community Apps store!

Example:
### Ship with Docker

```bash
docker run -d --name beaverhabits \
-u $(id -u):$(id -g) \
-e FIRST_DAY_OF_WEEK=0 \
-e HABITS_STORAGE=USER_DISK \
-e MAX_USER_COUNT=1 \
-v /path/to/host/directory:/app/.user/ \
-p 8080:8080 \
--restart unless-stopped \
daya0576/beaverhabits:latest
```

P.S. The container starts as nobody to increase the security and make it OpenShift compatible.
To avoid [permission issues](https://github.com/daya0576/beaverhabits/discussions/31), ensure that the UID owning the host folder aligns with the UID of the user inside the container.
Docker Compose file:
```yaml
services:
beaverhabits:
container_name: beaverhabits
user: 1000:1000 # User permissions of your docker or default user.
environment:
# See the note below to find all the environment variables
volumes:
- /path/to/beaver/habits:/app/.user/ # Change directory to match your docker file scheme.
ports:
- 8080:8080
restart: unless-stopped
image: daya0576/beaverhabits:latest
```
> [!IMPORTANT]
> The container starts as nobody to increase the security and make it OpenShift compatible.
> To avoid [permission issues](https://github.com/daya0576/beaverhabits/discussions/31), ensure that the UID owning the host folder aligns with the UID of the user inside the container.
### Options:
## Options
| Name | Description |
|:--|:--|
Expand All @@ -69,7 +103,6 @@ uv venv && uv sync
./start.sh dev
```


# Features

1. Pages
Expand Down Expand Up @@ -114,7 +147,7 @@ Open page `/gui/order` to change the order of habits.
# Future Plans

1. Quantitative metrics
2. Native mobile app (can't wait to learn Swift or Tauri 😁)
2. Native mobile app -- can't wait to try Swift or Tauri :p
3. Habit calendar template, e.g. vacations
4. Category or Folders
5. ...

0 comments on commit 0d70329

Please sign in to comment.