Welcome to the Employee Management System built with Django and Chart.js! This web application is designed to streamline employee management, making it easy for administrators to handle employee and department information, assign projects, and track task distribution efficiently. It also provides a user-friendly interface for employees to manage their daily tasks and visualize their performance using informative charts.
- Authentication: Utilizes Django's built-in authentication system for secure admin login and registration via email.
- Employee Management:
- Add new employees to the system.
- Delete existing employees.
- Assign departments to employees.
- Assign projects to employees.
- Department Management:
- Add new departments.
- Delete departments as needed.
- Project Management:
- Assign projects to employees, making project allocation straightforward.
- Employee Details:
- Admins can add employee details, including personal information and email.
- Upon adding an employee, an automated email is sent to the employee containing login details and a login link for accessing their panel.
- Personal Details: Employees can view and update their personal information from their dashboard.
- Daily Task Management: Employees can add and manage their daily tasks, providing a simple way to keep track of their work.
- Task Analytics:
- Daily tasks are automatically transformed into bar and pie charts using Chart.js, offering a visual representation of task distribution over time.
- Employees can access these charts from their dashboard to monitor their performance and productivity.
- Task Distribution: Admins have the ability to view task distribution across employees, enabling them to assess overall productivity and workload allocation within the organization.
To get started with this Employee Management Web App, follow these steps:
- Clone this repository to your local machine.
- Set up a virtual environment and install the required dependencies by running:
pip install -r requirements.txt
- Configure your database settings in the
settings.py
file. - Run migrations to set up the database:
python manage.py migrate
- Create an admin account using the following command and follow the prompts:
python manage.py createsuperuser
- Start the development server:
python manage.py runserver
- Access the web app at http://localhost:8000 and log in with the admin account to begin managing employees, departments, and projects.
- Employees can access their personal dashboard by clicking the provided link in their email and use the Employee Panel to manage tasks and view task analytics.
- Django: A high-level Python web framework.
- Chart.js: A JavaScript library for creating interactive charts and graphs.