Skip to content

Latest commit

ย 

History

75 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ Issue Tracker โ€” Full Stack MERN CRUD Application

A modern and scalable Issue Tracker Application built using the MERN Stack project. This application demonstrates real-world software engineering practices including authentication, CRUD operations, REST APIs, analytics dashboards, protected routes, filtering, responsive UI, and scalable folder architecture.

Designed with a clean and professional UI using React, TypeScript, Tailwind CSS, and Framer Motion.


๐ŸŒŸ Project Highlights

โœ… Full Stack MERN Architecture โœ… JWT Authentication & Protected Routes โœ… Complete CRUD Functionality โœ… Analytics Dashboard โœ… Search, Filter & Pagination โœ… Responsive Modern UI โœ… Dark / Light Theme Support โœ… Reusable Component Architecture โœ… Production-Level Folder Structure


๐Ÿ“Œ Assignment Requirements Covered

This project was developed as part of a technical interview assignment.

Core Functionalities

  • Create Issues
  • Read/View Issues
  • Update Issues
  • Delete Issues
  • Authentication System
  • REST API Integration
  • MongoDB Database Integration
  • Issue Status Tracking
  • Search & Filtering

โœจ Features

๐Ÿ” Authentication System

  • User Registration & Login
  • JWT-based Authentication
  • Password Hashing using bcrypt
  • Protected API Routes
  • Persistent User Sessions

๐Ÿ“ Issue Management

Users can:

  • Create new issues

  • Edit issue details

  • Delete issues with confirmation

  • Update issue statuses

  • Search issues by keywords

  • Filter issues by:

    • Status
    • Priority
    • Severity
  • Paginate issue lists

Supported Issue Statuses

  • Open
  • In Progress
  • Resolved
  • Closed

๐Ÿ“Š Dashboard & Analytics

The dashboard provides a visual overview of project issues.

Analytics Includes

  • Total Issues Count
  • Open Issues Count
  • Resolved Issues Count
  • Priority Distribution
  • Status Summary Cards
  • Visual Analytics Components

๐Ÿ‘ฅ Application Modules

๐Ÿ  Dashboard

Overview of issue statistics and analytics.

๐Ÿ“ Issues Management

Manage and track all issues efficiently.

๐Ÿ“Š Analytics Page

Visual representation of issue trends and distributions.

โš™๏ธ Settings Page

Application preferences and configurations.

๐Ÿ‘ค User Profile Page

Displays authenticated user information.


๐ŸŽจ UI/UX Features

  • Fully Responsive Design
  • Modern Dashboard Layout
  • Smooth Page Animations using Framer Motion
  • Clean Sidebar Navigation
  • Reusable UI Components
  • Dark / Light Theme Toggle
  • User-Friendly Experience

โš ๏ธ Known Limitation

๐Ÿ”” The notification system UI has been implemented, but real-time backend integration is still pending. Planned implementation will use Socket.io for real-time notifications.


๐Ÿ› ๏ธ Tech Stack

Frontend

  • React.js (Vite)
  • TypeScript
  • Tailwind CSS
  • Axios
  • React Router DOM
  • Framer Motion

Backend

  • Node.js
  • Express.js
  • JWT Authentication
  • bcrypt.js

Database

  • MongoDB
  • Mongoose ODM

๐Ÿ“ธ Screenshots

๐Ÿ  Dashboard


๐Ÿ“Š Analytics Page


๐Ÿ“ Issues Page


โš™๏ธ Settings Page

๐Ÿ“‚ Project Structure

issue-tracker/
โ”‚
โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ controllers/
โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ””โ”€โ”€ server.js
โ”‚
โ”œโ”€โ”€ frontend/
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ api/
โ”‚   โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”‚   โ”œโ”€โ”€ context/
โ”‚   โ”‚   โ”œโ”€โ”€ hooks/
โ”‚   โ”‚   โ”œโ”€โ”€ pages/
โ”‚   โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ”‚   โ””โ”€โ”€ App.tsx
โ”‚
โ”œโ”€โ”€ screenshots/
โ”œโ”€โ”€ README.md
โ””โ”€โ”€ package.json

โš™๏ธ Installation & Setup

1๏ธโƒฃ Clone the Repository

git clone https://github.com/DiluTharushika/issue-tracker.git
cd issue-tracker

๐Ÿ”ง Backend Setup

Install Dependencies

cd backend
npm install

Create Environment Variables

Create a .env file inside the backend folder:

PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key

Run Backend Server

npm run dev

๐Ÿ’ป Frontend Setup

Install Dependencies

cd frontend
npm install

Run Frontend

npm run dev

๐Ÿ“ค Export Features

The application supports:

  • Export Issues as CSV
  • Export Issues as JSON

๐Ÿ”’ Security Features

  • JWT Authentication
  • Password Hashing using bcrypt
  • Protected API Routes
  • Input Validation
  • Secure Environment Variables

๐Ÿ”ฎ Future Improvements

  • ๐Ÿ”” Real-time Notifications (Socket.io)
  • ๐Ÿ’ฌ Comments & Discussion System
  • ๐Ÿ“Ž File Upload Support
  • ๐Ÿง‘โ€๐Ÿ’ผ Role-Based Access Control (RBAC)
  • ๐Ÿ“Š Advanced Analytics Dashboard
  • ๐Ÿ“ฑ Mobile Application Version
  • ๐Ÿ“ง Email Notifications

๐Ÿงช API Features

RESTful APIs implemented for:

  • Authentication
  • User Management
  • Issue Management
  • Dashboard Analytics

๐Ÿš€ Deployment

Frontend and backend can be deployed using:

  • Vercel
  • Netlify
  • Render
  • Railway
  • MongoDB Atlas

๐Ÿ‘จโ€๐Ÿ’ป Author

Dilu Tharushika


๐Ÿ“„ License

This project was created for educational and interview assignment purposes.

About

A modern and scalable Issue Tracker Application built using the MERN Stack project.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages