demo.mp4
Small demo of a draggable focus timer window with a compact mode, built with TauPy and React.
- Timer with custom minutes and seconds, start/pause and reset.
- Settings modal for time selection.
- Two window modes (Full, Compact).
- Window control routed (minimize, close, resize, center).
Requirements: Python 3, Node 18+, TauPy installed in your environment.
cd focus
npm install
taupy dev- Start/Pause, Reset inside the timer.
- Settings: open via gear icon, adjust minutes/seconds with the rollers.
- Compact switch: button in the title bar; back arrow returns to full size.
- Dragging: full mode via title bar; compact mode via the whole compact area (buttons are non-drag).
main.py— TauPy app, window commands and click handlers.src/App.tsx— main UI.src/App.css— main styles.src/SettingsModal.tsx+src/SettingsModal.css— settings modal and rollers.
- Window is auto-centered on start.
- Minimal sizes set to allow the compact bar (240x140; compact uses 360x140).