Introduction
Time Tracker is an app that helps you to keep track of your daily routine and stay focus. Users can time what they have done in a day. The app will automatically store those records, lists them and analyzes them, and using different well-designed charts to display the results, so that user can have an intuitive knowledge of how much time they have been spending in a specific task, and what are the most time-consuming tasks in a day. For example, I can know if I spend too much time playing games instead of reading books. Meanwhile, when the app is timing, the user can not use the phone (or the timer will stop), which helps users to focus on what they are doing right now.
Technologies
The app is built on React Native with Expo. User data are stored in the AsyncStorage in the local environment, and managed by redux. We choose Ant Design Mobile Native for the UI library. The charts are render by react-native-chart-kit & react-native-svg-charts.
Functionality
- Add a task recorder (or timer), and user can choose color to label it.
- Timing what the user is doing right now with the specific timer.
- Record and store all the timing results.
- List the timing records. The records are also mark with user pre-defined color.
- User can filter the records with specific date or task.
- Using pie chart to show the time duration distribution of each task in a day / week / month / year.
- Using contribution map (heatmap) to show the activities of recent months.
- Trend function: how much more (or less) time you have spent on a task in this week compares to lask weeks.
- Clear All function: user can delete all records and timer data by one click.