Skip to content

Repository files navigation

RoomieRadar

RoomieRadar Icon

RoomieRadar is a mobile application designed to help students at the National University of Singapore (NUS) find compatible roommates based on shared preferences, habits, and lifestyle choices. The app enhances the roommate-finding experience by using a sophisticated matching algorithm and also fosters community connections through features like in-app messaging and community boards.

This project was developed as part of the Orbital Program, NUS School of Computing's 1st-year summer self-directed, independent work course, aimed at helping students pick up software development skills on their own using online resources.

Key Features

  • User Authentication: Secure email login and account registration using Firebase Authentication.
  • Profile Customization: Users can upload profile pictures, set usernames, and write introductions.
  • Advanced Matchmaking: Find roommates based on gender, sleep schedules, cleanliness, housing preferences, and more.
  • In-app Messaging: Real-time chat feature to connect with potential roommates.
  • Community Board: Engage with the NUS student community by posting or interacting with events and announcements.

Setup and Installation

1. Easy Installation (Expo Go)

If you just want to quickly run the app:

  1. Download the Expo Go App

  2. Scan the QR Code
    After downloading the Expo Go app, scan the QR code provided in the Expo link here with your device camera or within the Expo Go app.

  3. Enjoy the App!

2. Developer Setup

If you want to set up the app for development or testing:

  1. Install Dependencies

    • Ensure you have Node.js installed.
    • Install React Native CLI globally:
      npm install -g react-native-cli
    • Install Expo CLI globally:
      npm install -g expo-cli
  2. Clone the Repository

    git clone https://github.com/JadeCheah/roomie-radar.git
    
  3. Navigate to Project Directory

    cd roomie-radar
    
  4. Install Necessary Packages

    npm install
    npm install firebase @react-native-firebase/app @react-native-firebase/auth
    
  5. Start the App

    npx expo start
    
  6. Run on Your Device

    • Use the Expo Go app to scan the QR code shown in your terminal to load the app on your device.

Project Report

For more details about the project, including:

  • Technology Stack: Built with React Native, Expo, Firebase for authentication, and Firestore for database management.
  • Testing Methods: Unit tests and manual testing for core features, including user authentication, profile management, and in-app messaging.
  • Challenges and Solutions: Handling user state management, real-time updates, and optimizing performance for mobile platforms.

You can read the full Project Report for a deeper dive into the development process.

Contact

For any issues or inquiries, please reach out to:

  • Telegram: @y9u7e (Jade Cheah) or @supermariio0 (Mariia Popova)

About

Mobile app to find compatible roommates

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages