Web

Municipal Complaint Tracking with Response Deadlines

A system where residents report local problems with a photograph and location, complaints are routed to the responsible department, and every case has a visible deadline. The accountability comes from making both the clock and the statistics public.

Difficulty

Beginner

Achievable by one student in a semester with familiar tools.
Effort

1 semester, 2 students

Deliverables

5 to ship

3 optional extras

Suggested stack

DjangoPostgreSQLPostGISReactLeaflet
A suggestion, not a requirement. Swap anything for what you already know.

What you should ship

  • Public reporting flow with photograph, map location and category, usable without an account
  • Routing rules assigning categories to departments with a defined response deadline per category
  • Staff interface for updating status, adding notes and closing with a resolution
  • Public map and list showing open cases, age and whether the deadline has passed
  • Statistics page reporting median resolution time and overdue rate per department and category

If you have time left

  • Duplicate detection clustering reports of the same problem by location and category
  • Notifications to the reporter on status change
  • Open data export of anonymised case records

The problem

Reporting a broken street light or an uncollected bin usually means a phone call into a void. There is no reference number, no visible deadline and no way to know whether anyone acted.

What you build

Public reporting, departmental routing with deadlines, a staff workflow and, most importantly, public statistics.

Why this is a good starting project

The technology is ordinary and the difficulty is well matched to a team that wants to build something complete and well made rather than something risky. Everything in the deliverables list is achievable, which means you can finish it and polish it, and a finished polished project marks better than an ambitious unfinished one.

The feature that gives it purpose

Public overdue statistics. A complaint system that only staff can see changes nothing. Publishing median resolution time per department, and how many cases are past their deadline, is what creates the pressure that makes the system useful. Make that page the front page.

The hard part

Duplicate reports. Twenty people report the same pothole and each becomes a separate case, which distorts every statistic. Clustering by proximity and category is the fix and it is worth doing carefully.

Scope warning

Do not build a general workflow engine. Fixed categories, fixed routing rules, fixed deadlines, configurable by an administrator, is enough.

Ideas and guidance, not finished projects

These are project ideas and scoping guidance, published free for students to use as a starting point. I do not build, write, or sell final-year projects, and I do not complete coursework for anyone. Take an idea, make it yours, and build it.

Not sure this one fits you?

I help students pick an idea that matches their skills and their deadline, then scope it down until it is finishable. Guidance only, never done for you.

Get guidance
Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Every session is free; a few slots open each week.

Follow along

New writing, resources and project ideas land here first.