bboysoul 798725ad29
ci / gitleaks (push) Successful in 18s
ci / docker (push) Successful in 3m49s
fix: persist completed item visibility
2026-09-08 11:24:39 +08:00
2026-09-05 10:47:44 +08:00
2026-09-08 10:19:13 +08:00
2026-09-05 10:47:44 +08:00
2026-09-05 10:47:44 +08:00
2026-09-05 10:47:44 +08:00
2026-09-05 10:47:44 +08:00
2026-09-08 08:42:32 +08:00

dodo

一个自托管的任务与习惯管理工具,目标是做一个温暖、紧凑、可自己掌控数据的 TickTick-like 应用。

第一阶段能力

  • 首次初始化管理员
  • 用户名密码登录,Cookie Session
  • 文件夹、清单、任务基础 CRUD
  • 任务支持截止时间,以及每天 / 每周 / 每月 / 每年和自定义重复(间隔、星期、月日期、次数或截止日期)
  • 收集箱系统清单
  • 习惯打卡与倒数纪念日
  • 倒数日支持倒数日、纪念日、生日,以及每周/月/年重复
  • Vue 3 + PWA 应用外壳
  • 手账生活感浅色 UI

技术栈

  • Frontend: Vue 3 + TypeScript + Vite + Tailwind CSS
  • Backend: FastAPI + SQLAlchemy 2 Async
  • DB: PostgreSQL(测试环境使用 SQLite
  • Package: uv + pnpm

本地开发

cd /Users/bboysoul/PycharmProjects/dodo
uv sync
uv run uvicorn backend.main:app --host 0.0.0.0 --port 8781

cd frontend
pnpm install
pnpm run dev

环境变量

DODO_DATABASE_URL=postgresql+asyncpg://user:pass@host:5432/dodo
DODO_COOKIE_SECURE=false
DODO_SESSION_DAYS=30

验证

uv run pytest -q
uv run ruff check backend tests
cd frontend && pnpm run build
S
Description
A warm, self-hosted task and habit manager
Readme
4.1 MiB
Languages
TypeScript 42%
Python 38.8%
Vue 18%
HTML 0.7%
JavaScript 0.4%