Skip to content

valiantProgrammer/Civic-Issues

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

64 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Civic เคธเคพเคฅเฅ€ - Where Your Voice Meets Actions

Civic เคธเคพเคฅเฅ€ Logo


โœจ Civic เคธเคพเคฅเฅ€ - Where Your Voice Meets Actions โœจ

Typing SVG


Civic เคธเคพเคฅเฅ€ is a comprehensive civic issues reporting and management platform that empowers citizens to report local infrastructure problems and enables municipal authorities to efficiently manage and resolve these issues. The platform bridges the gap between citizens and local governance, fostering transparency and accountability in civic infrastructure management.

Tagline

"Where your voice meets actions" - Report local issues with just a few taps and help create a better community for everyone.


๐ŸŽฏ Project Goals

โœจ Our Mission โœจ

  1. Citizen Empowerment ๐Ÿ‘ฅ - Enable citizens to easily report civic issues with multimedia evidence
  2. Transparency ๐Ÿ“Š - Provide complete visibility into issue status and action taken
  3. Efficient Management โš™๏ธ - Help municipal authorities streamline issue verification and resolution
  4. Community Building ๐Ÿค - Foster collaboration between citizens and local government for infrastructure improvement

โœจ Key Features

For Citizens

  • Easy Report Submission: Report local issues with photos/videos and detailed descriptions
  • Category Selection: Choose from predefined issue categories (Pothole, Water Leakage, Street Light, etc.)
  • Location Precision: Automatic GPS coordinates or manual location picker
  • Media Evidence: Attach photos or videos as evidence
  • Unique Ticket ID: Every report gets a unique alphanumeric ID (CIVIC-YYYYMMDD-XXXXX) for easy reference
  • Email Notifications: Receive automatic email confirmations and status updates at every stage
  • Issue Tracking: Track the progress of reported issues in real-time
  • Status Updates: Receive notifications on issue status (Pending, Verified, Approved, Rejected)
  • Issue History: View all previously reported issues and their resolutions

๐Ÿƒ For Admin (Manual Verification)

โœ”๏ธ Report Verification | โœ… Approval/Rejection | ๐Ÿ“‹ Issue Board | ๐Ÿ“Š Detailed Analytics

For Admin (Manual Verification)

  • Report Verification: Manually verify reported issues as legitimate
  • Approval/Rejection: Accept verified reports or reject with reasons
  • Issue Board: Dashboard showing pending, verified, and rejected reports
  • Detailed Analytics: View statistics on similar issues in the area

๐Ÿ› ๏ธ For Administration (Municipal Staff)

๐Ÿ“‹ Issue Management | ๐Ÿ”„ Status Workflow | ๐ŸŒ Municipality Forwarding | ๐Ÿ“ˆ Higher Authority Escalation | ๐Ÿ“ Document History

For Administration (Municipal Staff)

  • Issue Management: Assess verified reports and plan resolutions
  • Status Workflow: Mark issues as approved/rejected or forward to other municipalities
  • Municipality Forwarding: Send reports to relevant municipal corporation or ward
  • Higher Authority Escalation: Forward critical issues to state or national authorities
  • Document History: Complete audit trail of actions taken on each issue

๐Ÿ“ฑ How to Use

Step 1: Register & Login

Step 1 Step 2

Register as a new user by providing your email, creating a password, and verifying your email through OTP.

Step 2: Verification & Account Setup

Step 3 Step 4

Verify your email address using the OTP sent to your registered email. Once verified, you can log in to your account.

Step 3: Login to Dashboard

Step 5

Enter your credentials and click the login button to access your personalized dashboard.

Step 4: Report an Issue

Step 6 Step 7

Click on the plus icon (floating action button) to start reporting a new issue. First, add media evidence (photos or videos).

Step 5: Select Category

Step 8

Choose the appropriate category for your reported issue from the available options.

Step 6: Fill Details & Location

Step 9 - Location Step 9 - Verification

Enter your live coordinates or click the location button to fetch your current location. Fill in the description and other required details, then submit.

Step 7: Track Progress

Step 10 - Status

View all your reported issues and track their progress. Click on any issue to see detailed information and status updates.

Step 8: View Evidence

Step 11 - Visual Evidence

Click on the image or video to view the full media evidence in high quality.


๐Ÿ› ๏ธ Tech Stack

โšก Our Technology Arsenal

Next.js React Tailwind CSS JavaScript

Backend & Database

Node.js MongoDB

Tools & Libraries

Swiper Three.js React Hot Toast JWT

Development & Deployment

VS Code Git


๐Ÿ“Š Architecture Overview

๐Ÿ—๏ธ System Design & Components

  1. User Portal

    • Report submission interface
    • Issue tracking dashboard
    • Profile management
  2. Admin Portal

    • Manual issue verification
    • Approval/rejection workflow
    • Analytics dashboard
  3. Administration Portal

    • Issue assessment and resolution
    • Municipality forwarding
    • Higher authority escalation
    • Audit trail
  4. Backend API

    • Authentication & authorization
    • Report CRUD operations
    • Status management
    • File upload handling
    • Geolocation services
  5. Database

    • User accounts
    • Report records
    • Status history
    • Municipal data
    • Ward information

๐Ÿ”„ Issue Workflow

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  CITIZEN REPORT (Pending)               โ”‚
โ”‚  Report local infrastructure issues     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                 โ”‚
                 โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  ADMIN VERIFICATION                     โ”‚
โ”‚  Manually verify reported issues        โ”‚
โ”‚  Status: Pending โ†’ Verified/Rejected    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                 โ”‚
                 โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  ADMINISTRATION ASSESSMENT              โ”‚
โ”‚  Plan & assign resolution               โ”‚
โ”‚  Status: Verified โ†’ Approved/Rejected   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                 โ”‚
                 โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  RESOLUTION & TRACKING                  โ”‚
โ”‚  Implement and monitor progress         โ”‚
โ”‚  Status: Approved โ†’ Completed/Forwarded โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Status Definitions:

  • Pending: Initial report submitted, awaiting admin verification
  • Verified: Admin has verified the report as legitimate
  • Approved: Administration has approved and assigned for resolution
  • Rejected: Issue deemed invalid or duplicate
  • Forwarded: Issue sent to another municipality or higher authority
  • Completed: Issue has been resolved

๐Ÿš€ Getting Started

โœจ Ready to Make an Impact? โœจ Follow these simple steps to get started

Prerequisites

  • Node.js (v18 or higher)
  • MongoDB (local or Atlas)
  • Git
  • npm or yarn

๐Ÿ’ก Pro Tip: Make sure you have all prerequisites installed before proceeding!

Installation

  1. Clone the repository
git clone <repository-url>
cd sih
  1. Install dependencies
npm install
  1. Set up environment variables Create a .env.local file with:
NEXT_PUBLIC_API_BASE_URL=http://localhost:3000/api
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
GEMINI_API_KEY=your_gemini_api_key

# Email Configuration for Notifications
SMTP_USERNAME=your-email@gmail.com
SMTP_PASSWORD=your-app-password
ADMIN_PORTAL_URL=https://your-admin-portal.com

Note: For Gmail, use an App Password, not your regular password. See QUICK_START_GUIDE.md for detailed email setup instructions.

  1. Run development server
npm run dev
  1. Open in browser Navigate to http://localhost:3000

๐Ÿ“ Project Structure

sih/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ admin/                 # Admin verification portal
โ”‚   โ”œโ”€โ”€ administration/         # Municipal staff portal
โ”‚   โ”œโ”€โ”€ user/                  # Citizen portal
โ”‚   โ”œโ”€โ”€ api/                   # Backend API routes
โ”‚   โ”œโ”€โ”€ components/            # Shared components
โ”‚   โ”œโ”€โ”€ login/                 # Authentication pages
โ”‚   โ”œโ”€โ”€ signup/                # Registration pages
โ”‚   โ””โ”€โ”€ layout.js              # Root layout
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ api.js                 # API client functions
โ”‚   โ”œโ”€โ”€ auth.js                # Authentication utilities
โ”‚   โ””โ”€โ”€ db.js                  # Database connection
โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ User.js                # User schema
โ”‚   โ”œโ”€โ”€ Report.js              # Report schema
โ”‚   โ”œโ”€โ”€ Admin.js               # Admin schema
โ”‚   โ”œโ”€โ”€ Administrative.js       # Administration staff schema
โ”‚   โ”œโ”€โ”€ Municipality.js         # Municipality data
โ”‚   โ”œโ”€โ”€ Ward.js                # Ward information
โ”‚   โ””โ”€โ”€ otpUser.js             # OTP verification
โ”œโ”€โ”€ utils/
โ”‚   โ”œโ”€โ”€ generateOTP.js         # OTP generation
โ”‚   โ”œโ”€โ”€ idGenerator.js         # ID generation
โ”‚   โ””โ”€โ”€ image-processing.js    # Image utilities
โ”œโ”€โ”€ public/
โ”‚   โ””โ”€โ”€ images/                # App screenshots & assets
โ””โ”€โ”€ package.json               # Dependencies & scripts

๐Ÿ” Security Features

๐Ÿ›ก๏ธ Protected & Secure

  • JWT Authentication: Secure token-based authentication
  • Password Hashing: Bcrypt for secure password storage
  • OTP Verification: Email-based two-factor verification
  • Role-Based Access Control: Separate dashboards for users, admins, and administration staff
  • CORS Protection: Secure cross-origin requests
  • Input Validation: Server and client-side validation
  • Image Processing: Safe image upload and storage

๐Ÿ“ˆ Key Metrics & Statistics

๐Ÿ“Š Track Everything

The application tracks:

  • Total reports submitted
  • Reports verified and approved
  • Average resolution time
  • Popular issue categories
  • Municipal-wise statistics
  • Ward-wise issue distribution
  • Similar reports in the area

๐ŸŽ“ Features in Detail

Image & Video Support

  • Support for multiple image formats (JPG, PNG, WebP)
  • Video upload capability for documentation
  • Panoramic image viewer for enhanced visualization
  • Automatic image compression and optimization

Geolocation Services

  • GPS coordinate capture
  • Interactive map picker
  • Ward and municipality auto-detection
  • Address reverse geocoding

AI-Powered Features

  • AI-based issue summarization
  • Suggested rejection reasons
  • Intelligent duplicate detection
  • Automated category suggestions

Real-time Notifications

  • Status update alerts
  • Verification notifications
  • Approval/rejection alerts
  • Toast notifications for user actions

๐Ÿ‘ฅ Development Team

๐ŸŒŸ Meet Our Talented Team ๐ŸŒŸ

Developed by the talented team:


๐Ÿ“ž Support & Contact

Have questions or feedback? We'd love to hear from you! Reach out anytime.

For issues, suggestions, or feedback:

  • Create an issue in the repository
  • Contact the development team
  • Report bugs through the application feedback form

๐Ÿ“œ License

This project is open source and available under the MIT License.


๐Ÿ™ Acknowledgments

  • Special thanks to all users who help improve the platform
  • Municipal corporations for their partnership
  • The open-source community for amazing libraries and tools
  • All supporters and contributors

๐Ÿ”ฎ Future Roadmap

๐Ÿš€ Exciting Features Coming Soon

  • Mobile app (iOS & Android)
  • Advanced analytics dashboards
  • SMS notifications
  • WhatsApp integration
  • Citizen reputation system
  • Gamification features
  • Blockchain-based verification
  • AI chatbot support
  • Multiple language support
  • Progressive web app (PWA) optimization

๐Ÿ“ Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

โค๏ธ Made with Love for Better Communities โค๏ธ

Report โ€ข Verify โ€ข Resolve โ€ข Improve


Created with dedication to civic improvement and community engagement

Last Updated: March 2026

About

Report & track civic issues in your community. Connect citizens with authorities for faster resolution.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages