尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Designed for families, built for teams. Easily create, assign, and manage routine tasks—then add a layer of fun with gamification. Take productivity to the next level with network integration that motivates users by enabling or disabling personal device connectivity.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Chores first, then screens. t@sk4ce is a free family app where kids do their chores, parents approve them, and the home internet only switches on once the chores are done. It runs on a small computer in your home, so your family's data stays in your house.
Website and setup help: https://sgtslaughta.github.io/tskfrce/
📖 Full beginner's guide online — step-by-step for parents, no technical knowledge needed.
It is honest about its limits: a determined kid can get around it (a phone hotspot, a different device). The app tells you when it notices. If the home box is switched off, the internet simply works.
Or here's the short version:
See what you need: a small always-on computer and an ordinary home router.
Install t@sk4ce: copy and paste one line.
curl -fsSL https://sgtslaughta.github.io/tskfrce/install.sh | sh
Do the first-time setup: seven short steps for your family, kids, chores, devices and hours.
Learn the everyday routine: approve chores, answer requests, give rewards.
Show your kids: a one-page guide you can hand over.
Something wrong? See Troubleshooting and the FAQ.
Architecture, data model, security notes and how to add badges or flair: docs/engineering.md.
Forgot a parent password? Another parent can make a reset link in Settings, or run cd ~/task4ce && docker compose -f docker-compose.prod.yml exec backend python -m app.cli reset-password <name> on the box.
Layout: backend/ (FastAPI + SQLite), frontend/ (Next.js), blocker/ (the home box service), lab/ (an isolated Docker network for tests).
Needs Docker with Compose. The blocker service needs Linux (it uses host networking), so on macOS or Windows run only the app services.
printf 'INTERNAL_TOKEN=dev\nLAN_IFACE=eth0\n' > .env # compose refuses to run without INTERNAL_TOKEN
docker compose up -d --build backend frontend
Open http://localhost:3000; the first visit shows the setup wizard. The backend listens on 127.0.0.1:8000 (/health). To run the blocker as well, see docs/blocker.md.
cd backend && python -m pytest tests -q # backend
cd backend && ruff format --check . && ruff check . # Python style (as in CI)
cd frontend && npm ci && npm test # jest
cd frontend && npm run lint && npm run type-check # lint and types
python -m pytest blocker/tests -q # blocker unit tests (repo root)
An isolated Docker network with a fake router, a fake internet, the real backend, the real blocker and kid devices. Needs Linux Docker. Details in lab/README.md.
cd blocker && RUN_INTEGRATION=1 python -m pytest tests/lab -v # real ARP, nftables and portal journeys
bash scripts/lab.sh up # start the lab and seed a family
bash scripts/lab.sh e2e # browser tests; screenshots land in frontend/e2e-artifacts
bash scripts/lab.sh down # tear it down
Semantic versioning and semantic commits. CI (.github/workflows/ci-cd.yml) runs lint, backend tests, the lab and a security scan; keep them green before pushing.
GNU General Public License v3.0. See LICENSE.