Skip to content

Project Time Tracker Demo (.NET MAUI + EF Core (SQLite) + MVVM)

Notifications You must be signed in to change notification settings

ymykhal/DemoTimeTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DemoTimeTracker

A lightweight .NET MAUI desktop demo app built to showcase modern MVVM architecture, SQLite persistence, and responsive UI design.
Created by Altura Codeworks — a boutique software studio focused on dependable software modernization and pragmatic engineering.


🧭 Overview

DemoTimeTracker helps you manage projects, track working time, and view daily and weekly summaries — all in a single, local .NET MAUI app.
It’s a demonstration project, designed to illustrate production-style organization, not a commercial product.

Screenshot - Time Entries Screenshot - Running Timer Screenshot - Summary

🧩 Features

🎯 Core Functionality

  • Add and manage projects with hourly rates
  • Start/stop timer for the current project (only one active timer at a time)
  • Add, edit, and delete manual time entries
  • View daily and weekly totals
  • Automatic calculation of billable amount

📊 Summary View

  • Period filters: Today / This Week / This Month / All Time
  • Key metrics: total hours, total amount, average per day, sessions count
  • Daily breakdown with time and amount per day

💾 Tech Highlights

  • .NET 9 MAUI with MVVM
  • Entity Framework Core (SQLite) for persistence
  • Dependency Injection for services and repositories
  • Reactive UI bindings for timer updates

## 🏗️ Architecture
DemoTimeTracker/
├── Models/ # Project and TimeEntry entities
├── Data/ # EF Core DbContext + Migrations
├── Services/ # Repository + TimeTracking logic
├── ViewModels/ # MVVM layer for pages
├── Views/ # XAML pages and content views
└── Resources/Styles/ # Color + style definitions (Gamma palette)

Pattern: MVVM + Repository
Database: SQLite (local, auto-created)
Dependency Injection: via MauiProgram.cs

Getting Started

Prerequisites

  • .NET SDK 9.0 or newer
  • Visual Studio 2022 (17.10+) with MAUI workload installed

Run locally

git clone https://github.com/yourusername/DemoTimeTracker.git
cd DemoTimeTracker
dotnet build
dotnet run

When launched, the app automatically creates a local SQLite database at:

%LOCALAPPDATA%\DemoTimeTracker\timetracker.db3

🧮 Demo Data (optional)

You can load sample data for testing:

sqlite3 %LOCALAPPDATA%\DemoTimeTracker\timetracker.db3 < seed.sql

🖋️ Credits

Developed by Yuriy Mykhalchuk https://www.linkedin.com/in/yuriy-mykhalchuk-b964ba10/

© 2025 Altura Codeworks

🌐 Links:

🌍 Website: https://alturacodeworks.com

💼 Upwork: https://www.upwork.com/agencies/alturacodeworks/

💻 GitHub: https://github.com/ymykhal

About

Project Time Tracker Demo (.NET MAUI + EF Core (SQLite) + MVVM)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages