Skip to content

struggyyy/RustyApp

Repository files navigation

RustyApp 🚗

License: Proprietary

RustyApp is the official mobile application for the Rusty ecosystem. It is designed to gamify civic engagement by empowering users to report abandoned vehicles in their neighborhoods. By identifying and reporting these vehicles, you contribute to cleaner, safer streets while tracking your personal impact.

Home Page Report Form Filled Report Form My Reports Page Report Card
Home Report Filled in Report My Reports Report Card


✨ Features

  • Report Vehicles: Easily snap a photo, pinpoint the location, and add a description for any abandoned vehicle you find.
  • Track Status: Monitor your reports in real-time as they move from Submitted to Accepted and finally Completed.
  • Gamification: Contribute to your community and track your impact with every verified report.
  • Interactive Map: Explore the history of your reported vehicles on a user-friendly map.
  • Optimized UI: Enjoy a sleek interface with optimal visibility during the day.
  • Bilingual Support: Fully localized in English and Polish.

📱 How to Use

  1. Create an Account: Sign up using your email.
  2. Spot a Car: Look for abandoned vehicles in your area (e.g., flat tires, broken windows, long-term parking).
  3. Submit a Report:
    • Tap the "Report a Car" button.
    • Take a clear photo of the vehicle.
    • Add a brief description.
    • Confirm the location on the map.
  4. Track Progress: Once your report is verified by an admin, you'll see its status update in real-time!

🚀 Getting Started

Prerequisites

  • Node.js (LTS version recommended)
  • Git
  • Expo CLI: Install globally via npm install -g expo-cli
  • Android Studio (for Android Emulator) or Xcode (for iOS Simulator, macOS only)
  • Expo Go app on your physical device (optional)

Installation & Configuration

  1. Clone the repository:
    git clone https://github.com/struggyyy/RustyApp.git
    cd RustyApp
  2. Install dependencies:
    npm install
  3. Create a .env file in the root directory and add your Google Maps API key:
    GOOGLE_MAPS_API_KEY=your_google_maps_api_key
  4. Setup Firebase Configuration:
    • Android: Place google-services.json in the root directory.
    • iOS: Place GoogleService-Info.plist in the root directory.
    • Service Account: Place firebase-service-account.json in the root directory. (Note: Collaborators must request these from the project lead)

Running the App

Start the development server:

npx expo start
  • Press a to open in the Android Emulator.
  • Press i to open in the iOS Simulator.
  • Scan the QR code with Expo Go to run on a physical device.

🛠️ Tech Stack


🧪 Testing & Quality

We maintain code reliability and high standards through Jest unit and integration testing.

  • Run Tests: npm run test (Jest test suite)
  • Watch Tests: npm run test:watch (Jest test runner in watch mode)

Copyright © 2026 @struggyyy. All Rights Reserved.

About

A React Native mobile app gamifying civic engagement. Built to help cities battle the abandoned vehicle crisis by letting users easily report, map, and track neglected cars in their community.

Topics

Resources

License

Stars

Watchers

Forks

Contributors