/checklist_app

A Django-based web application for managing procedural checklists, featuring role-based access control, task management, and real-time feedback. Developed for TH&Co to optimize workflow efficiency and accuracy.

Primary LanguageHTMLMIT LicenseMIT

CMS Icon

Checklist Management System

Django Python SQLite License

Overview

Checklist Management System is a web-based application developed as part of my Integrated M.Sc. in Computer Science with a specialization in Artificial Intelligence and Machine Learning. The system was designed and implemented for TH&Co, a chartered accountant firm based in Calicut, Kerala, to streamline task management, automate procedural checklists, and enhance overall operational efficiency.

The project focuses on three key user roles:

  • Admin: Manages users and system operations.
  • Users: Initiates tasks by submitting forms and selecting relevant checklists.
  • Checkers: Verifies the accuracy of submitted forms against checklist criteria.

This application leverages the Django framework with SQLite for data management, providing a scalable, secure, and efficient task management solution.

Features

Admin Module

  • User account management (creation, update, and deletion)
  • Checklist creation and management
  • Performance tracking and analytics dashboard
  • Role-based access control

User Module

  • Procedure initiation with form submissions
  • Track status of submitted procedures
  • Receive feedback from Checkers and make corrections as needed

Checker Module

  • Review submitted procedures against checklist criteria
  • Return procedures for revisions or approve them for completion
  • Access procedure history for auditing purposes

Security & Data Management

  • Role-based access control for secure user management
  • Data encryption and secure storage to protect sensitive information
  • Audit trails for all major operations

Technology Stack

  • Backend: Django (Python)
  • Frontend: HTML, CSS, JavaScript
  • Database: SQLite
  • Version Control: Git, GitHub
  • IDE: Visual Studio Code

Installation

  1. Clone the repository:

    git clone https://github.com/ARJ010/checklist_app.git
    cd checklist_app
  2. Set up a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  3. Install dependencies:

    pip install -r requirements.txt
  4. Apply migrations:

    python manage.py migrate
  5. Create a superuser:

    python manage.py createsuperuser
  6. Run the development server:

    python manage.py runserver
  7. Access the application at http://127.0.0.1:8000/.

Usage

  1. Admin:

    • Log in to the admin dashboard using your credentials.
    • Manage users, create checklists, and oversee the system's overall operation.
  2. Users:

    • Log in, initiate procedures, and track progress through the dashboard.
    • Upload required forms and documents.
  3. Checkers:

    • Review submitted tasks and provide feedback or approve them based on compliance with the checklist.

Future Enhancements

  • React.js Frontend: Integrating a modern React-based frontend for improved UI/UX.
  • Advanced Analytics: Leveraging machine learning algorithms for predictive task management insights.
  • Mobile Compatibility: Responsive design improvements for mobile accessibility.

Contributing

Contributions are welcome! If you'd like to contribute, please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add feature').
  5. Push to the branch (git push origin feature-branch).
  6. Open a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

Developed by Abhinav Raj
Feel free to reach out via LinkedIn or Email for any questions or feedback.