Skip to content

πŸ“ˆβ° Project and Time Tracking Tool with Data Visualization πŸ“Š

License

Notifications You must be signed in to change notification settings

julianofinck/project-time-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

61 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“ˆβ° Working Hours Dashboard πŸ“Š

Python 3.10.12 Dash 2.17.1 Pandas 2.2.2

This project generates dynamic analytical graphs for enterprise management using Python's Dash library. It requires Excels worksheets to be available locally. They must have the following columns.

employee date project product task total hours
John 23/07/24 project1 product1.1 backend development 7.4

Names inside the repository might be in Portuguese because I developed in a way to be easily plugable to the Codex workhours worksheets back in the day.

⬇️ How to install

Set the directory of the worksheets

The company's workhours worksheets must be locally available, as by using OneDrive-Desktop to add their cloud directory as a shortcut at your local. Copy the local path to this mirrored local directory and paste it as the environment variable COMPANY_WORKHOURS_EXCELS_DIR in the .env.

Install project using Poetry

# Change directory into project directory
cd <project-dir>

# Install venv
poetry install

# Activate venv
poetry shell

# Run project
python run.py

πŸ› οΈ How it works?

It is strongly dependent upon OneDrive's synchronization.

Flowchart

🌳 Repository Structure 🧬

.
β”œβ”€β”€ πŸ“„ README.md
β”œβ”€β”€ πŸ“ app
β”‚Β Β  β”œβ”€β”€ πŸ“„ __init__.py
β”‚Β Β  β”œβ”€β”€ πŸ“„ alternative_to_onedrive.py
β”‚Β Β  β”œβ”€β”€ πŸ“„ app_state.py
β”‚Β Β  β”œβ”€β”€ πŸ“ assets
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“ css
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ card.css
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ header-selectors.css
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ main.css
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ root.css
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ tab.css
β”‚Β Β  β”‚Β Β  β”‚Β Β  └── πŸ“„ table.css
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ favicon.ico
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ favicon_mock.ico
β”‚Β Β  β”‚Β Β  └── πŸ“„ script.js
β”‚Β Β  β”œβ”€β”€ πŸ“ cache
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ state.pickle
β”‚Β Β  β”‚Β Β  └── πŸ“„ valid_data.pickle
β”‚Β Β  β”œβ”€β”€ πŸ“ callbacks
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ __init__.py
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“ cards
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ __init__.py
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ invalid_registers.py
β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ team_commitment.py
β”‚Β Β  β”‚Β Β  β”‚Β Β  └── πŸ“„ valid_registers.py
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ headers.py
β”‚Β Β  β”‚Β Β  └── πŸ“„ read_excels_bar.py
β”‚Β Β  β”œβ”€β”€ πŸ“„ commitment_card_processor.py
β”‚Β Β  β”œβ”€β”€ πŸ“ languages
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ __init__.py
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ translations.csv
β”‚Β Β  β”‚Β Β  └── πŸ“„ translator.py
β”‚Β Β  β”œβ”€β”€ πŸ“ layout
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ πŸ“„ __init__.py
β”‚Β Β  β”‚Β Β  └── πŸ“„ layout.py
β”‚Β Β  β”œβ”€β”€ πŸ“ mocks
β”‚Β Β  β”‚Β Β  └── πŸ“„ mock.py
β”‚Β Β  └── πŸ“ utils
β”‚Β Β      └── πŸ“„ logger.py
β”œβ”€β”€ πŸ“ img
β”‚Β Β  └── πŸ“„ flowchart.svg
β”œβ”€β”€ πŸ“ logs
β”‚Β Β  └── πŸ“„ main.log
β”œβ”€β”€ πŸ“„ poetry.lock
β”œβ”€β”€ πŸ“„ pyproject.toml
└── πŸ“„ run.py

About

πŸ“ˆβ° Project and Time Tracking Tool with Data Visualization πŸ“Š

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published