MCPcopy
hub / github.com/daya0576/beaverhabits

github.com/daya0576/beaverhabits @v0.9.1 sqlite

repository ↗ · DeepWiki ↗ · release v0.9.1 ↗
717 symbols 2,472 edges 76 files 65 documented · 9%
README

Beaver Habit Tracker

GitHub Release Docker Pulls GitHub Actions Workflow Status Uptime Robot ratio (30 days)

A self-hosted habit tracking app without "Goals"

Derivatives

Beaver Habit Tracker API How‐to Guide

Getting Started

Cloud Service (SaaS)

Zero configuration, high availability, and low latency powered by global edge network.

  • Demo: https://beaverhabits.com/demo
  • Pricing Plans: https://beaverhabits.com

Self-Hosting

Unraid

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

Ship with Docker

docker run -d --name beaverhabits \
  -u $(id -u):$(id -g) \
  -e HABITS_STORAGE=USER_DISK \
  -v ./beaver/:/app/.user/ \
  -p 8080:8080 \
  daya0576/beaverhabits:latest

Or Docker Compose:

services:
  beaverhabits:
    container_name: beaverhabits
    user: 1000:1000 # User permissions of your docker or default user.
    environment:
      # See the link below to find all the environment variables
      # https://github.com/daya0576/beaverhabits/wiki/Environment-variables
      - HABITS_STORAGE=USER_DISK # DATABASE stores in a single SQLite database named habits.db. USER_DISK option saves in a local json file.
      - TRUSTED_LOCAL_EMAIL=your@email.com # Skip authentication
      - INDEX_HABIT_DATE_COLUMNS=5 # Customize the date columns for the index page.
      - ENABLE_IOS_STANDALONE=true
    volumes:
      - ./beaver/:/app/.user/ # Change directory to match your docker file scheme.
    ports:
      - 8080:8080
    restart: unless-stopped
    image: daya0576/beaverhabits:latest

P.S. The container starts as nobody to increase the security and make it OpenShift compatible. To avoid permission issues, ensure that the UID owning the host folder aligns with the UID of the user inside the container.

Development

BeaverHabits favors uv as package management tool. Here is how to set up the development environment:

# Install uv and all the dependencies
uv venv && uv sync

# Start the server
./start.sh dev

Features

For a complete list of features, please visit our Wiki page.

Inspired by: - Android mobile app "Loop Habit Tracker" created by @iSoron - NiceGUI Todo List example from @zauberzeug

Sponsor

Buy Me A Coffee

Core symbols most depended-on inside this repo

get
called by 68
beaverhabits/plan/paddle.py
menu_icon_item
called by 18
beaverhabits/frontend/components.py
get
called by 17
beaverhabits/storage/storage.py
reset_user_api_token
called by 15
beaverhabits/app/crud.py
redirect
called by 14
beaverhabits/frontend/components.py
layout
called by 12
beaverhabits/frontend/layout.py
refresh
called by 12
beaverhabits/storage/dict.py
get_user_habit_list
called by 11
beaverhabits/storage/storage.py

Shape

Function 464
Method 157
Class 74
Route 22

Languages

Python91%
TypeScript9%

Modules by API surface

beaverhabits/frontend/components.py113 symbols
beaverhabits/storage/storage.py55 symbols
statics/libs/sortable.min.js53 symbols
beaverhabits/storage/dict.py38 symbols
tests/test_apis.py37 symbols
beaverhabits/routes/routes.py33 symbols
beaverhabits/views.py30 symbols
beaverhabits/utils.py28 symbols
beaverhabits/routes/api.py26 symbols
beaverhabits/app/crud.py18 symbols
tests/test_api_tokens.py16 symbols
beaverhabits/routes/astro.py13 symbols

For agents

$ claude mcp add beaverhabits \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact