d889d0e8abb786f6cfeabec4f090b2c398d76dfd
- Add tests/test_json_file.py with unit tests for JsonFileRoomStorage and JsonFileTrackingStorage - Reorganize data directories per han's feedback: - Rooms: ~/.jigaido/data/room/<room_id>.json (was ~/.jigaido/data/<room_id>.json) - Tracking: ~/.jigaido/data/tracking/<room_id>_<user_id>.json (was ~/.jigaido/tracking/...) - Note: duplicate tracking is handled at TrackingService layer (returns False if already tracking), adapter allows duplicates by design
JIGAIDO
Named after Nanami Kento's Cursed Technique restriction. Suppresses power during normal hours, exerts it during overtime.
A bounty tracking platform. Currently ships with a Telegram bot for managing and tracking bounties in groups and DMs.
Apps
- Telegram Bot — Group and personal bounty tracking via Telegram commands, with due date reminders
Overview
- Group bounties: Each Telegram group has its own bounty list
- Personal bounties: Private DM bounty list for individuals
- Admin-only posting: Only group admins can add/update/delete bounties
- Universal tracking: Any member can track bounties to their personal list
- Due date reminders: Daily cron notifies users when bounties are due within 7 days
- Free-form dates: Natural language due dates (
"tomorrow","in 3 days","april 15") - Link deduplication: No duplicate links within the same group
Project Structure
jigaido/
├── apps/
│ └── telegram-bot/ ← first app (Python)
│ ├── bot.py
│ ├── commands.py
│ ├── cron.py
│ ├── db.py
│ └── requirements.txt
└── SPEC.md ← full design specification
License
MIT
Description
Bounty tracker powered by Telegram — Nanami-style cursed technique for tracking obligations and overtime.
Languages
Python
99.1%
Shell
0.9%