Coding Tracker is a console-based application built using .NET that helps users track the time spent on coding activities. This project expands on the concepts of habit tracking and integrates more sophisticated features to enhance user experience and data management.
The project is organized into the following key directories and files:
- Program.cs: The entry point of the application, containing the main logic to run the Coding Tracker.
- Helpers:
ConsoleHelper.cs: Utilities for console interactions, including input/output handling.DatabaseHelper.cs: Functions for interacting with the SQLite database.ValidationHelper.cs: Provides validation methods to ensure data integrity and user input correctness.
- Database:
- SQLite database file
coding-tracker.dbis used to store and manage the tracked coding sessions.
- SQLite database file
- Track coding sessions with start and end times.
- View, update, and delete recorded sessions.
- Validate user inputs to prevent errors and ensure data integrity.
- Store and retrieve data using an SQLite database.
- Enhanced Database Management:
- The previous project used a simple database structure. The Coding Tracker has improved database handling with better data validation, ensuring accurate and reliable data storage.
- Input Validation:
- The Coding Tracker introduces more comprehensive input validation (via
ValidationHelper.cs), reducing the likelihood of incorrect or inconsistent data being stored.
- The Coding Tracker introduces more comprehensive input validation (via
- Advanced Console Interaction:
- Enhanced console interaction with better error handling and user guidance, providing a smoother user experience compared to the habit tracker.
- Configuration File:
- The usage (no matter how simple) of a configuration file allows the developer to define keys and values that can be used in the entire application with ease.
- .NET SDK (version 8.0 or higher)
-
Clone the repository to your local machine.
-
Navigate to the project directory.
-
Run the following command to build and run the application:
dotnet run
Once the application is running, follow the console prompts to log, view, update, and delete your coding sessions.
- Graphical User Interface (GUI): Transition from a console-based to a GUI-based application for better user interaction.
- Report Generation: Add functionality to generate detailed reports on coding activities over time.
- Multi-user Support: Expand the application to support multiple users with individual coding logs.
Contributions are welcome! Please fork the repository and submit a pull request with your changes.
This project is licensed under the MIT License - see the LICENSE file for details.