Beginner Project: This week's beginner project is to create a Python script that simulates a basic stopwatch. Your stopwatch should be able to start, pause, resume, and reset, displaying the elapsed time in a readable format (e.g., hours, minutes, seconds). Implement this as a command-line application, with the user controlling the stopwatch using keyboard inputs.
Beginner Stretch Goal: Enhance your stopwatch by adding a lap feature that records split times at user-defined intervals. Display the lap times along with the total elapsed time.
Intermediate Project: For the intermediate challenge, create a Python script that functions as a basic expense tracker. Your expense tracker should allow users to add, delete, and list expenses, as well as categorize them by type (e.g., food, rent, entertainment). Store the expenses in a file or a database to persist the data between sessions.
Intermediate Stretch Goal: Extend your expense tracker by implementing features that allow users to view summaries of their spending, such as total expenses per category or spending trends over time. Additionally, add a budgeting feature that allows users to set spending limits for each category and receive alerts when they exceed their budget.
Advanced Project: This week's advanced project involves creating a simple web-based to-do list application using a Python web framework, such as Flask or Django. Your application should allow users to create, edit, and delete to-do items, as well as mark them as complete. Implement a user authentication system to ensure that only registered users can access and manage their to-do lists.
Advanced Stretch Goal: Enhance your to-do list application by adding features such as due dates, priority levels, and tags for organizing tasks. Implement a search functionality that allows users to filter their to-do items based on these attributes. Additionally, consider adding a calendar view to display tasks based on their due dates.
Chris Franklin
Weekly Python