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 | Report | Filled in Report | My Reports | Report Card |
- 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.
- Create an Account: Sign up using your email.
- Spot a Car: Look for abandoned vehicles in your area (e.g., flat tires, broken windows, long-term parking).
- 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.
- Track Progress: Once your report is verified by an admin, you'll see its status update in real-time!
- 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)
- Clone the repository:
git clone https://github.com/struggyyy/RustyApp.git cd RustyApp - Install dependencies:
npm install
- Create a
.envfile in the root directory and add your Google Maps API key:GOOGLE_MAPS_API_KEY=your_google_maps_api_key
- Setup Firebase Configuration:
- Android: Place
google-services.jsonin the root directory. - iOS: Place
GoogleService-Info.plistin the root directory. - Service Account: Place
firebase-service-account.jsonin the root directory. (Note: Collaborators must request these from the project lead)
- Android: Place
Start the development server:
npx expo start- Press
ato open in the Android Emulator. - Press
ito open in the iOS Simulator. - Scan the QR code with Expo Go to run on a physical device.
- Framework: React Native 0.81 via Expo 54
- Language: TypeScript
- Routing: Expo Router 6
- Backend: Firebase 11 (Auth, Firestore, Storage)
- Maps: React Native Maps (Google Maps)
- Styling: Styled Components 6
- Internationalization: i18next
- Testing: Jest & React Native Testing Library
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.




