Assignment/Homework Management Tool
This Python project, built using Flask, provides a user-friendly web application for managing assignments and homework. Instructors or students can create, view, update, and delete assignments, keeping track of deadlines and important details.
Features:
- Assignment Creation: Add new assignments with titles, descriptions, due dates, and optional point values.
- Assignment Management: View a list of all assignments, filter by course or due date, and edit or delete existing assignments.
- Deadline Tracking: Easily visualize upcoming deadlines and prioritize tasks.
Getting Started
-
Prerequisites: Ensure you have Python 3 and pip (the package installer) installed on your system. You can usually download them from https://www.python.org/downloads/.
-
Installation: Clone or download this repository to your local machine. Open your terminal or command prompt and navigate to the project directory. Then, run the following command to install the required dependencies:
pip install -r requirements.txt
This will install Flask and any other necessary libraries listed in the
requirements.txt
file (if it exists). -
Run the App: Once the dependencies are installed, start the development server by executing:
python app.py
This will typically launch the server at http://127.0.0.1:5000/ (you can check the exact URL in the terminal output). Open your web browser and visit this URL to access the application.
Usage
The specific usage instructions will depend on the functionalities you've implemented in your Flask app. However, here's a general outline:
- Creating Assignments:
- Viewing Assignments:
- Editing Assignments:
- Deleting Assignments:
Customization and Development
This is a basic foundation, and you can enhance it further by:
- Implementing user authentication and authorization to restrict access and actions based on user roles (instructor vs. student).
- Integrating with a database to persist data beyond the current session.
- Adding functionalities like file uploads for submitting assignments or attaching relevant resources.
- Creating visualizations to represent deadlines or workload distribution.
Feel free to explore Flask's documentation and other online resources to tailor the application to your specific needs.
Contributing
If you'd like to contribute to this project, feel free to fork the repository, make your changes, and submit a pull request. Please ensure your code adheres to PEP 8 style guidelines and includes clear comments for better maintainability.
License
MIT LICENSE