A comprehensive Bug Tracking System built with the MERN stack (MongoDB, Express.js, React.js, Node.js). This application enables development teams to efficiently manage software projects, track bugs, assign tasks, and monitor progress through an intuitive web interface.
- ๐ฅ Role-Based Access Control: Distinct Admin and Developer user roles
- ๐ Project Management: Create, organize, and assign projects to team members
- ๐ซ Advanced Ticket System: Create, update, assign, and resolve bug tickets
- ๐ฌ Real-time Comments: Collaborative communication between admins and developers
- ๐ Status Tracking: Visual progress monitoring (To Do โ In Progress โ Done)
- ๐ Secure Authentication: JWT-based login and registration system
- โฐ Activity Timestamps: Track creation and update times for all activities
- ๐ฑ Responsive Design: Mobile-friendly interface using Bootstrap 5
- ๐ฏ Task Assignment: Assign specific tickets to developers
- ๐ Dashboard Analytics: Overview of project and ticket statistics
| Technology | Purpose |
|---|---|
| MongoDB | NoSQL database for data storage |
| Express.js | Backend web framework |
| React.js | Frontend user interface |
| Node.js | Backend runtime environment |
| Bootstrap 5 | CSS framework for styling |
| JWT | Authentication & authorization |
| Axios | HTTP client for API requests |
| Admin Dashboard | Developer View |
|---|---|
| Login | Register |
|---|---|
- Node.js (v14 or higher)
- MongoDB (local installation or MongoDB Atlas account)
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/AshishSinsinwal/bugTracker.git
-
Set up the backend
cd Server npm install -
Configure environment variables
Create a
.envfile in theserverdirectory:PORT=8000 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret_key
-
Start the backend server
npm run dev
-
Set up the frontend
cd ../bug-tracker-frontend npm install -
Start the frontend application
npm start
The application will be available at http://localhost:8000
bug-tracker/
โโโ client/ # React frontend
โ โโโ public/
โ โโโ src/
โ โ โโโ components/ # Reusable UI components
โ โ โโโ pages/ # Page components
โ โ โโโ services/ # API service functions
โ โ โโโ context/ # React context providers
โ โ โโโ App.js # Main application component
โ โโโ package.json
โโโ server/ # Express backend
โ โโโ models/ # MongoDB schemas
โ โโโ routes/ # API route definitions
โ โโโ controllers/ # Request handlers
โ โโโ middleware/ # Custom middleware
โ โโโ config/ # Configuration files
โ โโโ server.js # Server entry point
โโโ README.md
- Create and manage projects
- Assign developers to tickets
- Create, edit, and delete bug tickets
- Manage user accounts
- View tickets
- Update ticket status (To Do โ In Progress โ Done)
- Add comments and updates to tickets
- Track personal task progress
- Create detailed bug reports with priority levels
- Assign tickets to specific developers
- Track ticket lifecycle from creation to resolution
- Add comments and status updates
- Secure user registration and login
- JWT token-based session management
- Role-based route protection
- Email Notifications: Automated alerts for ticket assignments and updates
- File Attachments: Upload screenshots and documents to tickets
- Advanced Filtering: Filter tickets by priority, status, assignee, and date
- Activity Dashboard: Comprehensive logging of all user activities
- Dark Mode: Toggle between light and dark themes
- Mobile App: Native mobile application for iOS and Android
- Integration APIs: Connect with GitHub, Jira, and other development tools
- Reporting: Generate PDF reports for project progress
- Time Tracking: Track time spent on each ticket
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Your Name
- GitHub: Ashish Sinsinwal
- LinkedIn: Ashish Sinsinwal
- Thanks to the MERN stack community for excellent documentation and resources
- Bootstrap team for the responsive CSS framework
- MongoDB for providing an excellent NoSQL database solution
Built with โค๏ธ using the MERN stack