Skip to content

Crime Report App is a secure platform for anonymously submitting and tracking incident reports. It uses AI assistance for categorizing incidents and offers an admin dashboard for managing submissions. Built with Next.js, TypeScript, and integrated with Gemini AI , the app ensures privacy and ease of use for both users and administrato

Notifications You must be signed in to change notification settings

brandoniscoding-dev/SOS-App

Repository files navigation


Project Banner
typescript nextdotjs tailwindcss prisma

SoS App

A secure platform for anonymous incident reporting.

📋 Table of Contents

  1. 🤖 Introduction
  2. ⚙️ Tech Stack
  3. 🔋 Features
  4. 🤸 Quick Start
  5. 🕸️ Environment Setup
  6. 🚀 Deployment
  7. 🧑‍💻 Testing
  8. 🤝 Contributing
  9. 📝 License

🤖 Introduction

Welcome to the SoS App! This application provides a secure and user-friendly platform to report incidents anonymously. Built with the latest technologies, it ensures that sensitive information remains private while allowing users to report issues efficiently. The app is hosted online, making it accessible from anywhere, and relies on a cloud-hosted database for seamless data management.


⚙️ Tech Stack

The SoS App is built using the following technologies:

  • Next.js 14 – A powerful React framework for building server-side rendered applications.
  • TypeScript – For type safety and better developer experience.
  • Prisma – A modern database toolkit for working with databases, with support for PostgreSQL.
  • NextAuth.js – For secure authentication with easy configuration.
  • Tailwind CSS – For a responsive and customizable UI.
  • React Hook Form – For building forms with minimal re-renders and better performance.
  • GeminiAI – For integrating AI functionalities.
  • BCrypt – For secure password hashing and encryption.

🔋 Features

  • Anonymity – All reports are submitted anonymously, ensuring user privacy.
  • Admin Panel – Special access for admins to manage reports and user data.
  • Real-time Updates – Reports are processed and updated in real time.
  • Secure Authentication – Admin users are authenticated securely via NextAuth.js.
  • Responsive Design – Built using Tailwind CSS to ensure the app is usable on both desktop and mobile devices.
  • AI Integration – Use GeminiAI to automate certain actions and enhance reporting functionalities.

🤸 Quick Start

To get started quickly, follow the steps below:

Prerequisites

Make sure you have the following installed:

Installation

  1. Clone the repository:

    git clone https://github.com/brandoniscoding-dev/SOS-App.git
    cd SOS App
  2. Install dependencies:

    pnpm install
  3. Set up the database:

    npx prisma generate
    npx prisma db push
  4. Start the development server:

    pnpm run dev

🕸️ Environment Setup

Create a .env file in the root directory with the following environment variables:

NEXTAUTH_SECRET="your-secret-key"
NEXTAUTH_URL="http://localhost:3000/api/auth"
GEMINI_API_KEY=AIzaSyD3gDRNNd3wlCCZGYGaEmuNd_OPAbq_6bA

DATABASE_URL="prisma+postgres://accelerate.prisma-data.net/?api_key=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGlfa2V5IjoiYjVlYWQ4NWMtZmI5NC00ZGEzLWIwNmItOGRiMjE0MzQyMzMxIiwidGVuYW50X2lkIjoiNWUzNTk1NjcyNjJmMTQ5NTExY2VlYjQwN2U1Nzg3YTMwMTYzMzIxZDNiZDU4NDJmZTNiYmZiMDMyYzg5ZTVjNSIsImludGVybmFsX3NlY3JldCI6ImQyNTFmYjBmLTQ4ODgtNDQ2OS04MDc1LTU0NmM4NGUxMWY2NyJ9.GCddZ6h2Qqneu3RVkIGmJPq41dzjrscALLAhHGk0XdU"
PULSE_API_KEY="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGlfa2V5IjoiYjVlYWQ4NWMtZmI5NC00ZGEzLWIwNmItOGRiMjE0MzQyMzMxIiwidGVuYW50X2lkIjoiNWUzNTk1NjcyNjJmMTQ5NTExY2VlYjQwN2U1Nzg3YTMwMTYzMzIxZDNiZDU4NDJmZTNiYmZiMDMyYzg5ZTVjNSIsImludGVybmFsX3NlY3JldCI6ImQyNTFmYjBmLTQ4ODgtNDQ2OS04MDc1LTU0NmM4NGUxMWY2NyJ9.GCddZ6h2Qqneu3RVkIGmJPq41dzjrscALLAhHGk0XdU"

🚀 Deployment

The application can be deployed to production using Vercel or Docker.

Using Vercel

  1. Push your code to a Git repository.
  2. Connect the repository to Vercel.
  3. Set up the environment variables in the Vercel dashboard.
  4. Deploy and watch the magic happen!

Using Docker

  1. Ensure you have Docker installed on your system.

  2. Build the Docker image for the application:

    docker build -t sos-app .
  3. Run the application using the Docker container:

    docker run -d -p 3000:3000 --name sos-app-container sos-app
  4. Access the application in your browser at http://localhost:3000.


🧑‍💻 Testing

Admin Login

For testing the app as an admin, use the following credentials:

This will give you access to the Admin Panel where you can manage reports and view user data.


🤝 Contributing

We welcome contributions! Please follow our Contributing Guidelines to help improve the project.


📝 License

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

About

Crime Report App is a secure platform for anonymously submitting and tracking incident reports. It uses AI assistance for categorizing incidents and offers an admin dashboard for managing submissions. Built with Next.js, TypeScript, and integrated with Gemini AI , the app ensures privacy and ease of use for both users and administrato

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published