A command-line application built in C# to track your daily coding hours, set long-term coding goals, and visualize your productivity. The project utilizes a clean architectural approach (separating Commands and Queries) to handle business logic and data manipulation.
- Live Stopwatch Session: Track your coding sessions in real-time using a built-in stopwatch.
- Manual Session Management: Easily add, update, read, and delete manual coding sessions.
- Goal Setting: Define coding targets and track your progress against them.
- Data Visualization & Reports: View formatted tables and summary reports to analyze your coding habits over time.
- Robust Input Validation: Uses custom utility classes to ensure dates and times are entered in valid formats.
- Local Storage: All data is safely stored in a local SQLite database.
- Language: C# / .NET
- Database: SQLite
- Architecture: Command/Query Handler Pattern
- .NET SDK (Version 8.0 or newer)
- Clone the repository:
git clone https://github.com/Patryk-MM/CodeReviews.Console.CodingTracker.git cd CodeReviews.Console.CodingTracker/Patryk-MM.Console.CodingTracker - Navigate to the main project directory:
cd Patryk-MM.Console.CodingTracker - Run the application:
Note: Upon its first run, the database configuration class will automatically create the required SQLite tables if they do not already exist.
dotnet run
Follow the on-screen console prompts to navigate the main menu. You can start a live stopwatch, log previous sessions, check your current goal progress, or generate a time report.