Inspiration

I wanted to build something that solves a real problem instead of creating just another project for my portfolio. IT support teams deal with many tickets every day, and manually sorting them, deciding their priority, and writing responses can take time.

That's where the idea for TicketPilot AI came from. I wanted to make the initial ticket-handling process simpler while keeping the results understandable and giving the technician the final say.

What It Does

TicketPilot AI helps users handle IT support tickets more easily. You can choose a sample issue or enter your own ticket, and the application will:

  • Categorize the issue as Network, Software, Hardware, or Account.
  • Estimate its priority as Low, Medium, or High.
  • Explain why it assigned that category and priority.
  • Generate a response draft that the technician can edit before using.
  • Handle unclear or incomplete ticket descriptions.

One thing I wanted to focus on was keeping the project simple and accessible. It runs locally and doesn't depend on paid AI APIs.

How I Built It

I built TicketPilot AI using Python for the backend and triage logic, along with HTML, CSS, and JavaScript for the interface. Python's built-in HTTP server handles local requests, and I used pytest to test the main functionality.

I also followed the Devpost Learn Skill Pack to organize my work, starting with the project scope and requirements before moving on to implementation and testing.

To keep the application lightweight, I used rule-based classification and keyword matching rather than a trained machine-learning model or an LLM. This allowed me to build a working prototype without needing expensive services.

Challenges I Faced

One of the main challenges was making the application useful without relying on an external AI service. I had to define rules for different ticket categories, decide how to estimate priority, and make the explanations understandable.

I also worked on handling empty or unclear inputs and generating response drafts that users could edit instead of being forced to accept a fixed answer.

I tested the project with pytest, and all 14 tests passed during my local test run.

What I Learned

This project taught me that building a useful application isn't just about writing code. Planning the features, deciding what the project should and shouldn't do, and testing different scenarios are equally important.

I also learned the value of explaining how a system reaches its decisions and being honest about its limitations. There is still room to improve the classification logic, and I'd like to explore a machine-learning approach in the future.

What's Next?

I'd like to improve the classification rules, test the application against a larger set of real-world-style support tickets, and explore adding a machine-learning classifier in a future version. My goal is to make TicketPilot AI more reliable while keeping it lightweight, explainable, and easy to use.

Built With

Share this project:

Updates

Submission history