Skip to content

Latest commit

 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌍 Spot Alert - Community Reporter

A Flask-based web application that empowers communities to report and track local issues like potholes, broken streetlights, garbage dumps, and more. Citizens can quickly submit reports with location, category, and optional images. Administrators can view and manage all reports from a central dashboard.


✨ Features

  • 📍 Location-based reporting: Users can report issues with latitude & longitude.
  • 📝 Rich issue details: Title, description, category, and reporter name.
  • 🖼️ Image uploads: Attach photos of the issue.
  • 🗂️ Categorization: Tag reports as Roads, Electricity, Sanitation, or Other.
  • 📊 Dashboard: View all submitted issues, sorted by recency.
  • 🔐 Admin Panel: Manage community issues.
  • 💾 SQLite Database: Lightweight and easy to set up.

🛠️ Tech Stack

  • Backend: [Flask] (Python)
  • Database: SQLite
  • Frontend: HTML, CSS (custom styling in static/style.css)
  • Template Engine: Jinja2 (templates/*.html)
  • Image Handling: Werkzeug & Flask file upload utilities

📂 Project Structure

community-reporter/
│── app.py              # Main Flask application
│── init_db.sql         # SQL schema for issues table
│── requirements.txt    # Dependencies
│── uploads/            # Uploaded issue images (auto-created)
│── templates/          # HTML templates
│   ├── base.html
│   ├── index.html
│   ├── dashboard.html
│   └── admin.html
│── static/
│   └── style.css       # Frontend styling
└── README.md           # Project documentation

⚡ Installation & Setup

1. Clone the repository

git clone https://github.com/your-username/community-reporter.git
cd community-reporter

2. Create a virtual environment

python -m venv venv
source venv/bin/activate   # On Linux/Mac
venv\Scripts\activate      # On Windows

3. Install dependencies

pip install -r requirements.txt

4. Initialize the database

python
>>> from app import init_db
>>> init_db()
>>> exit()

5. Run the Flask app

flask run

The app will be available at http://127.0.0.1:5000/ 🚀


🖼️ Screenshots

HOME PAGE

Screenshot 2025-08-23 225134

DASHBOARD

Screenshot 2025-08-23 225153

ISSUE REPORTING

Screenshot 2025-08-23 225256

🔮 Future Improvements

  • 🌐 Integrate Google Maps for precise location reporting.
  • 📧 Email notifications for admins on new reports.
  • 📱 Mobile-friendly UI with responsive design.
  • 🔑 User authentication (reporters & admins).

🤝 Contributing

Contributions are welcome! 🎉

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

📜 License

This project is licensed under the MIT License – feel free to use and modify it for your community projects.


💡 Made with ❤️ by Shuvojit Samanta

Releases

Packages

Contributors

Languages