Inspiration
People often struggle to report civic issues or lack a proper channel to be heard—sometimes even a simple streetlight takes weeks to get fixed. CivicVoice was created to bridge this gap, making reporting easy and ensuring quicker solutions.
What it does
CivicVoice provides citizens with a direct communication channel to municipalities. Users can:
- Report civic issues quickly with details. 2.Track the real-time status of their complaints. 3.Provide feedback on the municipality’s action. This ensures accountability and gives people confidence that their voices are being heard.
How we built it
We built CivicVoice using the MERN stack (MongoDB, Express.js, React.js, Node.js) for a smooth, scalable, and responsive experience. Frontend: React for a clean and interactive UI. Backend: Node.js + Express for API handling and routing. Database: MongoDB for storing issues, user data, and feedback. Deployment: Hosted on cloud platforms for accessibility.
Challenges we ran into
Setting up smooth API routing between frontend and backend. Designing an intuitive yet minimal UI under time pressure. Handling authentication and role-based access (users vs. admins).
Accomplishments that we're proud of
Implemented real-time tracking of reported issues. Designed a simple yet powerful interface for both citizens and municipalities.
What we learned
How to integrate different parts of the MERN stack into a functional product. The importance of clean UI/UX for civic applications. Improved debugging skills while solving routing and state management issues.
What's next for CivicVoice
Adding multilingual support for accessibility in rural/urban areas. Integrating geotagging and image upload for better issue reporting. Building a mobile app for wider reach. Partnering with municipalities for real-world implementation. Adding AI-based categorization to prioritize critical issues.
Built With
- api
- mern
- react
- tailwindcss
Log in or sign up for Devpost to join the conversation.