Skip to content

This is a full-stack social media-inspired web application built to make communities safer and more connected. It empowers users to raise their voices by reporting local issues with descriptions, images, and live locations, while trusted authorities like police or fire services can respond and take action in real time.

License

Notifications You must be signed in to change notification settings

badhon495/Nirapod

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nirapod

React Spring Boot PostgreSQL Maven

This is a full-stack social media-inspired web application built to make communities safer and more connected. It empowers users to raise their voices by reporting local issues with descriptions, images, and live locations, while trusted authorities like police or fire services can respond and take action in real time. Complaints are shared in a familiar social feed where others can engage, support, and contribute. With live chat and location sharing, the platform fosters quick, transparent, and meaningful communication. Built with Spring Boot and React, it combines functionality with purpose—bridging the gap between citizens and responders when it matters most.

Project Structure

  • backend/ (Spring Boot backend)
  • frontend/ (React frontend)
  • db_creation.sh (Postgres DB setup)

Installation and Setup

First, you need to clone the repository:

git clone https://github.com/badhon495/Nirapod.git
cd Nirapod

Install the required dependencies for both backend and frontend:

npm install

Backend Setup (Spring Boot)

  1. Navigate to backend directory:
    cd backend
  2. Copy the example environment file:
    cp src/main/resources/application.properties.example src/main/resources/application.properties
  3. Edit application.properties to set your database, email, and Google credentials.
  4. Build the project (requires Java 17+ and Maven):
    mvn clean install
  5. Run the backend:
    mvn spring-boot:run
  6. The backend will run on http://localhost:8080 by default.

Frontend Setup (React)

  1. Navigate to frontend directory:
    cd frontend
  2. Copy the example environment file:
    cp .env.example .env
  3. Edit the .env file to set your environment variables.
  4. Start the frontend (dependencies are already installed from root):
    npm start
  5. The frontend will run on http://localhost:3000 by default.

Live Chat Setup

  1. Navigate to backend directory:
    cd backend
  2. Start the live chat server (ws package is already installed from root):
    node livechat-server.js

Database Setup

  1. Ensure PostgreSQL is running and accessible with the credentials in db_creation.sh.
  2. Run the script:
    ./db_creation.sh

Environment Configuration

To set up your environment variables and configuration files:

  1. Backend application.properties

    • Copy the example file to create your actual config:
      cp backend/src/main/resources/application.properties.example backend/src/main/resources/application.properties
    • Edit application.properties and fill in your real database, email, and Google credentials.
  2. Frontend .env file

    • Copy the example file to create your actual .env:
      cp frontend/.env.example frontend/.env
    • Edit .env and fill in your real secrets and environment variables.

Notes

  • Update backend application.properties for DB credentials if needed.
  • File uploads will be stored in the backend (see backend config for details).
  • For production, configure environment variables and secure credentials.
  • Get the Google APP ID and APP SECRET from the Google Developer Console and set them in the frontend .env file and backend application.properties.
  • For mail service, you can use any SMTP server. The example uses Gmail, but you can replace it with your own SMTP server details in the application.properties file.
  • Ensure you have the required permissions for file uploads and location sharing in your browser settings.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.


⭐ Star this repo if you found it helpful!

About

This is a full-stack social media-inspired web application built to make communities safer and more connected. It empowers users to raise their voices by reporting local issues with descriptions, images, and live locations, while trusted authorities like police or fire services can respond and take action in real time.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •