Skip to content

memoilga/TicketTracker

Repository files navigation

Ticket Tracker

Ticket Tracker is a small Kanban-style ticket tracker put together for a hackathon-style assignment. It is a three-tier web app: a single-page React frontend, an ASP.NET Core HTTP API, and a PostgreSQL database, all wired together with Docker Compose so the whole thing starts with one command.

What is in it

  • Sign-up with email and password, email verification through an SMTP relay, and login.
  • Teams, epics, and tickets, each managed through the UI and stored in PostgreSQL.
  • A five-column Kanban board per team with drag-and-drop between columns.
  • Filtering tickets by type, epic, and title search.
  • A comment thread on each ticket.

Tech stack

  • Frontend: React + TypeScript, built with Vite, served by nginx.
  • Backend: ASP.NET Core Minimal API on .NET 10, Entity Framework Core with the Npgsql provider.
  • Database: PostgreSQL.
  • Everything runs in containers through Docker Compose.

Running it locally

You only need Docker Desktop (or Docker Engine plus the Compose plugin). No host .NET SDK, Node.js, or PostgreSQL is required just to run the app.

  1. Get the code from GitHub:
    git clone <your-repository-url>
    cd TICKET_TRACKER
    
  2. Copy the example environment file and fill in real local values:
    cp .env.example .env
    
    Open .env and set the database credentials and SMTP settings you want to use.
  3. Start the whole stack:
    docker compose up --build
    
  4. Open the app in your browser at:
    http://localhost:3000
    

A note about verification emails

By default the local stack also starts Mailpit, a throwaway mail catcher, and points the API at it. When you sign up, the verification email is captured by Mailpit instead of being sent for real — open http://localhost:8025 to read it and click the verification link. This lets you test the full sign-up flow without configuring a real mailbox.

To use a real SMTP relay instead (for example during a demo), set the real SMTP_* values in .env and start only the main Compose file:

docker compose -f docker-compose.yml up --build

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors