Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).


## [1.3.1] - 2025-08-23

### Changed
- Updated the `README.md` file to accurately reflect the current state of the application. The update includes a revised feature list, a corrected project structure diagram, and improved quick start and usage instructions.


## [1.3.0] - 2025-08-23

### Changed
Expand Down Expand Up @@ -158,6 +164,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0



[1.3.1]: https://github.com/PPeitsch/TimeTrack/compare/v1.3.0...v1.3.1
[1.3.0]: https://github.com/PPeitsch/TimeTrack/compare/v1.2.3...v1.3.0
[1.2.3]: https://github.com/PPeitsch/TimeTrack/compare/v1.2.2...v1.2.3
[1.2.2]: https://github.com/PPeitsch/TimeTrack/compare/v1.2.1...v1.2.2
Expand All @@ -174,4 +181,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[1.0.3]: https://github.com/PPeitsch/TimeTrack/compare/v1.0.2...v1.0.3
[1.0.2]: https://github.com/PPeitsch/TimeTrack/compare/v1.0.1...v1.0.2
[1.0.1]: https://github.com/PPeitsch/TimeTrack/compare/v1.0.0...v1.0.1
[1.0.0]: https://github.com/PPeitsch/TimeTrack/releases/tag/v1.0.0
[1.0.0]: https://github.com/PPeitsch/TimeTrack/releases/tag/v1.0.0
46 changes: 27 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,13 @@

TimeTrack is a simple yet powerful time tracking application designed for managing work hours, leaves, and holidays. Built with Flask and compatible with PostgreSQL or SQLite, it provides a user-friendly interface for tracking your time and analyzing your work patterns.

![TimeTrack Dashboard](https://via.placeholder.com/800x400?text=TimeTrack+Dashboard)
![TimeTrack Calendar View](https://via.placeholder.com/800x400?text=TimeTrack+Calendar+View)

## 🌟 Features

- 🗓️ **Interactive Calendar Log** - Manage your schedule with a drag-and-drop monthly calendar view
- 📅 **Flexible Time Entry** - Record multiple clock in/out entries per day
- ⚙️ **Customizable Absence Codes** - Create, edit, and delete your own absence types
- 🏖️ **Absence Management** - Track leaves, holidays and other time off
- 📊 **Time Analytics** - View daily, weekly and monthly work summaries
- 📈 **Automatic Calculations** - Track work hour balances and overtime
Expand Down Expand Up @@ -62,6 +64,7 @@ cp .env.example .env
```bash
python init_db.py
```
> **Note:** This script is interactive and may prompt you to import data, such as public holidays.

6. Run the application:
```bash
Expand All @@ -72,27 +75,31 @@ flask run

## 📖 Usage

### Manual Time Entry
The application is organized into several key sections accessible from the main navigation bar.

1. Navigate to "Manual Entry" to record your work hours
2. Select a date and whether it's a regular work day or absence
3. For work days, enter your clock-in and clock-out times
4. You can add multiple time entries per day (e.g., for lunch breaks)
### Calendar Log

### Time Summary
This is the main interface for managing your schedule.
- View an entire month at a glance with color-coded day types.
- Click and drag to select one or more days to change their type (e.g., assign a week of vacation).
- Quickly override weekends or holidays to log work on non-standard days.

View a monthly summary of your work hours, including:
- Required hours based on working days
- Actual hours worked
- Balance (overtime or deficit)
- Daily breakdown with detailed information
### Manual Entry

### Time Logs
For detailed time logging on a specific day:
- Select a date and specify whether it's a workday or an absence.
- For workdays, enter multiple clock-in and clock-out times to account for breaks.

Access a chronological log of all your time entries, including:
- Regular work days with specific times
- Absences and holidays
- Daily totals
### Summary

Get a detailed overview of your logged time for any given month:
- See a summary of required hours, completed hours, and the resulting balance.
- View a day-by-day breakdown of hours worked versus required hours.

### Settings

Customize the application to fit your needs:
- Manage absence codes by adding, editing, or deleting types (e.g., "Vacation", "Sick Leave").

## 📁 Project Structure

Expand All @@ -102,15 +109,16 @@ TimeTrack/
│ ├── config/ # Configuration settings
│ ├── db/ # Database management
│ ├── models/ # Data models
│ ├── routes/ # Route handlers
│ ├── routes/ # Route handlers (Blueprints)
│ ├── services/ # Business logic (e.g., holiday providers)
│ ├── static/ # Static assets (JS, CSS)
│ ├── templates/ # HTML templates
│ └── utils/ # Utility functions
├── scripts/ # Helper scripts
├── tests/ # Test suite
├── .env # Environment configuration
├── .env.example # Example environment configuration
├── app.py # Application entry point
├── run.py # Application entry point
├── init_db.py # Database initialization script
└── requirements.txt # Python dependencies
```
Expand Down