iCounter
Desktop app made with Python for tracking my work and earnings
Visit Live Site
Tech:Python
Overview
Desktop application built to track translation work (paid per record), automating logging, earnings calculation, and real-time productivity metrics. Designed to replace manual tracking and provide immediate feedback during work sessions.
Key Features
- Real-time tracking of records translated and earnings
- Session and sprint-based time tracking (start/stop workflow)
- Live productivity metrics including records per hour, average time per record, earnings per hour, total session time and earnings
- Automatic logging to Excel file
- Pre-structured Excel output for persistent record keeping
Technical Highlights
- Modular OOP architecture with clear separation of concerns
- Unidirectional data flow: UI triggers actions, actions update state/data, state notifies UI
- Observer-style pattern for UI updates via state subscriptions
- Timer system that tracks session, sprint, and per-record timing concurrently
Challenges Solved
- Maintaining accurate time-based metrics across overlapping timers (session vs sprint vs per-letter)
- Designing a clean interaction model between UI, state, and data layers
- Ensuring real-time stat updates without introducing inconsistency
- Handling Excel formatting and reliable append-based persistence
What This Demonstrates
- Ability to design clean, modular architectures in a desktop environment
- Strong understanding of state management and data flow patterns
- Practical application of automation to eliminate manual workflows
- Building tools tailored to actual user needs
My Role
Made fully by me.
