Skip to content

ashleegaf/help-desk

Repository files navigation

A basic help desk app with ticket submission and panel view capabilities.

Built with Next.js-Prisma-PostgreSQL Starter.

Features

  • Submit ticket requests
  • View all tickets and related details in admin panel
  • Periodic refresh of admin panel to retrieve new tickets
  • Update ticket status
  • Respond to a ticket

REST APIs

  • submit-request(name, email, subject, description)
  • update-ticket(ticketId, field, updatedValue)
  • view-tickets()

Database Design (Postgres)

Database design

(back to top)

Getting Started

Create .env file variables:

DB_URL="_insert url to postgres database here_"
NODE_ENV="development"

Cloud-hosted database tool recommendation: Railway. With Railway, an empty database (and SHADOW_DB_URL) isn't necessary to enable development-focused Prisma commands. See shadow database for more info on their role in detecting potential schema issues - by comparing existing migrations to the development branch - prior to generating a new migration.

Install packages:

npm install

Run the development server:

npm run dev

Open http://localhost:3000 with your browser to see the app.

(back to top)

Roadmap

  • Update the agent assigned to a ticket
  • Update the last message date when agents respond to a ticket
  • Add auth to restrict access to admin panel
  • Implement rate limiter for ticket submissions
  • Create UI and database functionality tests

(back to top)

Acknowledgements

Releases

No releases published

Packages

No packages published

Contributors 5