Skip to content

Cyki89/RealTimeTrackingApplication

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TimeTrackingApp

Overview

The goal of this project is to build real-time tracking application. This application is compatible with the Windows operating system and the Google Chrome browser. You can use it program to see how much time you spend on a specific desktop app or website.

Inspiration

The inspiration for this project was taken from https://www.youtube.com/watch?v=ZBLYcvPl1MA&t=796s.

Requirements

  • python 3.8
  • tkinter
  • pandas
  • numpy
  • matplotlib
  • plotly
  • pillow
  • uiautomation
  • win32

Features

  • Real-time tracking of desktop applications and websites
  • Automatically save raw data every 2 minutes or when exiting the program
  • Automatic change of raw data saving after date change (at 00:00)
  • Updating real-time summary and graph every 3 minutes
  • Logging error and continuing to run the application in the event of non-critical errors (files/logs/errors.txt)
  • Registering your desktop applications and websites to make reports more clearly and user-friendly
  • Viewing and comparing daily activity summaries
  • Merging several daily activity summaries into reports (e.g. weekly or monthly reports) and then comparing them
  • Adjusting the appearance of the application to user needs

Content

  • requirements.txt - file with all required packages
  • main.py - script to run application
  • backend - folder contains all packages/modules related to the backend
  • user_interface - folder contains all packages/modules related to the user interface
  • files - folder contains all hepler files like: raw data, reports, setting files, images
  • settings - separate settings package

How to run application

  • Download repository - git clone https://github.com/Cyki89/RealTimeTrackingApplication.git.
  • Create new virtual enviroment - mkvirtualenv --python=<your python 3.8 location> virtualenv_name.
  • Install dependecies - pip install -r requirements.txt.
  • Go to main application folder - cd TimeTrackingApp.
  • Run script main.py on your local machine - python main.py.
  • See the tutorial below on how to use this application

Tutorial

TimeTracking

Screenshot

  • Click button "Start Time Tracking" to start time tracking
  • Click button "Stop Time Tracking" to stop time tracking
  • Click button "Tutorial" to see application guide in web browser
  • In the upper frame you can see the daily activity summary, refreshed every 2 minutes
  • In the lower frame you can see the daily activity summary plot, refreshed every 2 minutes
  • If you see <UNKNOWN_APP> in the table then you should register the application (see MyApps section)
  • If you see <UNKNOWN_WEBSITE> in the table then you should register the website (see MyWebsites section)

MyApps

Screenshot

  • Click the "Show Registered Apps" button to see the registered desktop applications and their identifying keywords
  • Click the "Show Unknown Apps" button to see the unknown desktop applications identifying keywords and their added date to the system
  • Click the "Register New App" button and enter desktop application identifying keyword and name to register new application
  • Click the "Delete Registered App" button and enter desktop application identifying keyword to remove registered application from the system
  • Click the "Delete Unknown Apps" button to remove all registered desktop applications from the system
  • Restart apllication after all delete/add operations

MyWebsites

Screenshot

  • Click the "Show Registered Websites" button to see the registered websites and their identifying keywords
  • Click the "Show Unknown Websites" button to see the unknown websites identifying keywords and their added date to the system
  • Click the "Register New Website" button and enter website identifying keyword and name to register new website
  • Click the "Delete Registered Website" button and enter applications identifying keyword to remove registered application from the system
  • Click the "Delete Unknown Websites" button to remove all registered websites from the system
  • Restart apllication after all delete/add operations

DailySummaries

Screenshot

  • Click the "Show Daily Summaries" button and select file to see daily summary
  • Click the "Compare Daily Summaries" button and select files to compare daily activities (by summary tables)
  • Click the "Update Raw Data" button and select json file to update activity name in raw data - usefull when you registered new desktop application or website
  • Click the "Delete Raw Data" button to delete raw json file and coresponding daily summary from the system

Report

Screenshot

  • Click the "Make Report" button and select daily summaries to create an activity report for several days (e.g. weekly report)
  • Click the "Show Report" button to see previously created activity report (summary and plot)
  • Click the "Compare Reports" button and select files to compare activity reports (by summary tables)
  • Click the "Delete Report" button to delete activity report

Settings

Screenshot

  • Click the "Show Base Settings" button to see application appearance settings
  • Click the "Show Files/Dir Patch" button to see dirs/files patchs
  • Click the "Change Setting" button to change application appearance settings or dirs/files patchs

About

Real-time tracking desktop application with Python and Tkinter

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages