A web-first, local-first task planner for study sessions that minimizes startup friction, adapts work into small early segments, and automatically turns completed work into relax time.
- Task creation: add a task with title, description, estimated work, due date, and priority.
- Day planning: place tasks into a day view and reorder by priority.
- Adaptive session slotting: split a task into short-to-long work blocks that start small, ramp up, then taper down.
- Break rewards: compute relaxation breaks automatically from the amount of work completed.
- Portable storage: save the full state to JSON first, with CSV export optional later.
- Future portability: keep the core logic framework-neutral so it can later be packaged for desktop and mobile.
The app should let you create a task with a description, an estimated total work time
The app should show the tasks planned for a given day in a calendar-like or timeline-like view. Tasks should be sortable by priority and by how urgently they need attention. The first version should favor clarity over visual complexity.
For each task, the app should generate a sequence of work and break blocks that lowers the psychological cost of starting. A good default is:
- first block:
$5$ minutes work - then:
$5$ minutes break - next:
$15$ minutes work - then:
$5$ minutes break - next:
$40$ minutes work - then:
$10$ minutes break
After the opener, later blocks should adapt so the session still feels manageable. If the task has remaining work
where
To reduce burnout near the end of a long session, taper later blocks using a fatigue factor:
where
The key behavior is: start with the easiest possible commitment, then only increase work size if the user is already engaged.
Relax time should be derived from completed work so the app feels like a reward system, not a second scheduler. A simple default is to map each completed work minute to a smaller amount of break time:
where
For example,
The prototype should save all tasks, their schedules, and completion state to a JSON file. JSON is the right default because it handles nested data such as task segments and reward history more naturally than CSV.
CSV can remain a future export option, but it should not be the primary storage format.
The implementation should avoid locking the app to one OS. The core scheduling and storage logic should stay separate from the UI so the same code can later be packaged for Windows or mobile.
A web-first build is the fastest path for the prototype and gives the best chance of reuse later for desktop packaging or a mobile wrapper.
The first version should not try to solve full project management, team collaboration, cloud sync, or complex analytics. The goal is a reliable personal planning tool that can help with an exam in the next few days.
The app only needs enough intelligence to reduce startup friction, keep the session moving, and make progress visible.