/CityCare

Primary LanguageJavaScriptMIT LicenseMIT

CityCare

CityCare is a comprehensive platform designed to empower citizens by providing them with a voice and an effective mechanism to contribute to their community's well-being. It encourages civic participation and ensures urban issues are reported and addressed in a timely manner. CityCare leverages technology to foster a collaborative approach to improve the quality of urban life and governance.

Table of Contents

  1. Motivation
  2. Features
  3. Screenshots
  4. Technologies Used
  5. Installation
  6. Usage
  7. Contributing
  8. License
  9. Contact

Motivation

CityCare stems from the pressing need to empower citizens with a voice and an effective mechanism to contribute to their community's well-being. By providing a user-friendly, accessible platform, CityCare aims to encourage civic participation, ensuring that urban issues are not only reported but also addressed in a timely manner. The project is driven by the belief that a collaborative approach, leveraging technology, can significantly improve the quality of urban life and governance.

Features

  1. Comprehensive Issue Reporting and Tracking: Users can report new complaints, complete with type, description, location, and multimedia evidence. Each complaint can be tracked through its lifecycle from submission to resolution.
  2. Community Engagement: The platform enables citizens to view, upvote, downvote, or mark their issues as similar to existing complaints, fostering a community-driven approach to issue prioritization.
  3. Alerts and Notifications: Through in-app notifications and Firebase Cloud Messaging, users receive updates on complaint status, new issues in their locality, government actions, and more.
  4. Interactive Map Visualization: A dynamic map displays issues within the user's locality, enhanced with symbols for immediate recognition of problem types, alongside analytical reports.
  5. Customizable Alert Preferences: Users can tailor alert preferences to receive notifications that match their interests and concerns.
  6. Complaint Monitoring Website: A web application for government officials to see all complaints of their respective categories, with locality-based filtering of complaints and an alert management system.

App Screenshots

Website Screenshots

Technologies Used

  • Backend: Node.js, Express, Firebase for alerts and security.
  • Frontend:
    • Mobile Applications: React-Native
    • Web Interface: React, supplemented with HTML, CSS, and JavaScript, TailwindCSS for responsive UI.
  • Databases: MongoDB
  • Additional Technologies:
    • Multer for media uploads
    • Google APIs for map integration

Installation

To set up the CityCare project locally, follow these steps:

  1. Clone the repository: bash git clone https://github.com/yourusername/CityCare.git cd CityCare

  2. Install backend dependencies: bash cd backend npm install

  3. Install frontend dependencies:

    • For mobile applications: bash cd app npm install

    • For web interface: bash cd dashboard npm install

  4. Set up environment variables:

    • Create a .env file in the backend directory and add your environment variables (e.g., database URL, Firebase configuration).
  5. Run the backend server: bash cd backend nodemon app

  6. Run the mobile application: bash cd app npm run android

  7. Run the web application: bash cd dashboard npm start

Usage

Reporting Issues

  • Users can report new complaints using the mobile or web application, providing details such as type, description, location, and multimedia evidence.
  • Track the status of your complaints through the application's dashboard.

Community Engagement

  • View and interact with other users' complaints by upvoting, downvoting, or marking issues as similar.
  • Participate in community-driven issue prioritization.

Alerts and Notifications

  • Receive updates on complaint status, new issues in your locality, and government actions through in-app notifications and Firebase Cloud Messaging.

Interactive Map Visualization

  • Use the dynamic map to view reported issues within your locality, with symbols for immediate recognition of problem types.
  • Access analytical reports for a comprehensive overview of urban issues.

Contributing

We welcome contributions to CityCare! To contribute, please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/your-feature).
  3. Make your changes and commit them (git commit -m 'Add your feature').
  4. Push to the branch (git push origin feature/your-feature).
  5. Create a pull request.

Contact

For any questions or suggestions, feel free to contact us at aashu2348154@gmail.com.


Thank you for using CityCare! Together, we can improve the quality of urban life and governance.