-
-
Our home page, where you can search any city.
-
From searching a city, you will see where different issues are located.
-
When you click on an issue, it will give you a streetview of that issue, as well as giving you the option to generate a report from issue.
-
After generating a report, whether from an individual issue or the city, you will be hit with a loading screen.
-
A report will be generated that you can scroll through or choose to download as a PDF.
Inspiration
There are a multitude of different issues that people have to deal with in various issues. We were motivated by our frustration with potholes. We thought about how a program could figure out how a city's budget could be better allocated to tackle the issues that often effect every day people and where funding could be taken from.
What it does
PoliCity operates with a 2-step agentic AI workflow powered by Gemini alongside our clustering and machine learning algorithms to classify our data points. Our first model does a multifaceted analysis of the data to develop an actionable plan. Our second model is a reporter agent, generating reports from the data that was aggregated and refined by the first model. At the end of loading, a report is ready for the user. The report contains a plan with the issues, summary, costs, repair costs, and locally available contractors. Paired with potential sources of funding and a graph to visualize, repairing the city is closer than ever. Once generated, both the data points and completed report are stored in our MongoDB database for fast retrieval in the future.
How we built it
Front-end: We used React for the website and Figma to design the logo. To incorporate the interact-able map, we used Leaflet and utilized Google Maps and StreetView to be able to easily view the problems.
Back-end: For storing the data about all of the issues reported, we used MongoDB. To generate reports, we used Gemini API. We used Open311's API to get information about types of issues, such as potholes, traffic signs, etc. and where they are located.
Challenges we ran into
We had some difficulty finding the right APIs that would have the information that we need. With all of the various APIs with similar purposes and different functions, diving into the best way to implement was a challenge we were excited to tackle.
Accomplishments that we're proud of
There were many technologies that we hadn't used before, such as Gemini API and React, and we were able to successfully implement them. We're also proud of the fact that our website doesn't look like a government website, though government workers are part of the target audience.
What we learned
We learned how it was surprisingly easy to integrate Gemini API into our projects as well as how to use React.
What's next for PoliCity
We would want to add a feature that would allow citizens to log and report issues that they notice and add that to our database of problems. We would also be interesting in implementing a route that shows the most efficient way to go about solving a specific subset of issues(potholes, traffic signs, etc.).
Built With
- fastapi
- figma
- gemini
- google-maps-embed-api
- leaflet.js
- mongodb
- npm
- open311
- react
- rest
- scikit-learn
Log in or sign up for Devpost to join the conversation.