Skip to content

A full-featured Helpdesk Ticket Management System built with React and Tailwind CSS. It allows users, operation staff, technical team members, and admins to collaborate on issue tracking and resolution through a clean and professional interface.

Notifications You must be signed in to change notification settings

newdevatgit/helpdesk-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎟️ Helpdesk Ticket Management System

A full-featured Helpdesk Ticket Management System built with React and Tailwind CSS. It allows users, operation staff, technical team members, and admins to collaborate on issue tracking and resolution through a clean and professional interface.


πŸš€ Current Features

  • βœ… User Login (use any username)
  • βœ… Technical Support Login (use techuser as username)
  • βœ… Operational Team Login (use otuser as username)
  • βœ… Admin Login (use admin as username)
  • πŸ” Role-based UI rendering
  • ❗ No backend implemented yet (planned in future)

Login Credentials

  • πŸ‘€ Admin: admin
  • πŸ‘€ Operational Team: otuser
  • πŸ‘€ Technical Support: techuser
  • πŸ‘€ Regular User: any username

πŸš€ Live Demo

πŸ”— Helpdesk Live Site on Netlify


πŸ“Έ Screenshots

πŸ”Ή Sign up

Sign up

πŸ”Ή User Dashboard

User Dashboard

πŸ”Ή New ticket

New ticket

πŸ”Ή User Profile

User Profile

πŸ”Ή Admin dashboard

Admin dashboard

πŸ”Ή Admin setting

Admin setting

πŸ”Ή OT dashboard

OT dashboard

πŸ”Ή OT ticket approval

OT ticket approval

πŸ”Ή Tech support

Tech support

πŸ” Sign In Flow

  • All users must sign in to access any functionality.
  • Session is stored using localStorage (isLoggedIn=true).
  • Unauthenticated users are redirected to the sign-in page.

πŸ‘₯ User Roles and Flows

πŸ‘€ 1. End User Flow

  • Register or Sign In to the platform.
  • Create a new support ticket with title, description, and priority.
  • View status of submitted tickets (Pending, In Progress, Solved).
  • Receive updates when the ticket is assigned or resolved.

πŸ›  2. Technical Team Flow

  • View all tickets assigned to them.
  • Update ticket status (e.g., In Progress, Waiting for Info, Resolved).
  • Add internal or public notes to communicate with the operations team or end user.
  • Manage time tracking and resolution logs.

πŸ“‹ 3. Operation Team Flow

  • View new tickets submitted by users.
  • Assign tickets to relevant technical team members.
  • Monitor overall ticket status and SLA compliance.
  • Communicate with users to request clarification.

πŸ‘‘ 4. Admin Flow

  • Full dashboard access for all tickets.
  • Manage users (view, block/unblock accounts).
  • Track performance of the technical and operation teams.
  • Generate reports on resolution time, team workload, and feedback.

🎫 Ticket Lifecycle

  1. User submits a ticket.
  2. Operations team reviews and assigns to technical team.
  3. Technical team updates ticket status and adds resolutions.
  4. User is notified about updates.
  5. Ticket is marked as Resolved or Closed.

πŸ”§ Technologies Used

  • React
  • Tailwind CSS
  • React Router DOM
  • React Icons
  • react-hook-form (for forms)
  • localStorage (for session simulation)

πŸ“Œ Note: No backend/API is currently implemented β€” to be added in future versions.


πŸ› οΈ Getting Started

πŸ“¦ 1. Clone the Repository

git clone https://github.com/yourusername/helpdesk-app.git
cd helpdesk-app

πŸ”§ 2. Install Dependencies

npm install

▢️ 3. Run the App

npm run dev

πŸ” Protected Routes

Route Access Role Description
/signin Public Sign in to the platform
/signup Public Create a new user account
/ All Auth Users Dashboard overview
/new-ticket End User Submit new support request
/my-tickets All Users View personal or team tickets
/assigned Technical Team View assigned tickets
/manage-tickets Operation/Admin Assign and track all tickets
/admin Admin Only Manage users and analytics

πŸ“ Project Structure

src/
β”œβ”€β”€ components/      # Reusable UI components (Header, Sidebar, etc.)
β”œβ”€β”€ layouts/         # MainLayout for dashboard structure
β”œβ”€β”€ pages/           # SignIn, SignUp, Dashboard, Tickets, AdminPanel, etc.
β”œβ”€β”€ utils/           # PrivateRoute for auth protection
β”œβ”€β”€ App.jsx          # Route definitions
└── index.css        # Tailwind base styles

βœ… Completed Features

  • User Authentication Flow (UI-based)
  • Ticket Submission Form
  • Ticket Listing for Users
  • Ticket Assignment Flow (Ops to Tech)
  • Role-Based Route Protection
  • Basic Layout and Navigation

🧠 Future Enhancements

  • Integrate backend (Node.js, MongoDB)
  • Add email notifications and activity logs
  • Real-time ticket status updates via sockets or polling
  • Team performance analytics

✍️ Author

Made with ❀️ by Arvind Singh
πŸ“« Connect on GitHub or LinkedIn for collaborations or suggestions.


πŸ“„ License

This project is licensed under the MIT License β€” free to use and modify.

About

A full-featured Helpdesk Ticket Management System built with React and Tailwind CSS. It allows users, operation staff, technical team members, and admins to collaborate on issue tracking and resolution through a clean and professional interface.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages