Skip to content

An implementation of a distributed room booking mobile app, we created during our third year at AUEB's Distributed Systems course. This implementation leverages the MapReduce framework.

Notifications You must be signed in to change notification settings

MariaSchoinaki/roomie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

roomie

Roomie is an airbnb booking system developed in Java and Kotlin that operates distributed. Using the Map Reduce framework, it analyzes, process and stores data in an eficcient and quick manner. Roomie consists of two parts:

  • backend, for the data operations and
  • frontend, an Android application for hosting airbnbs.

Roomie also supports manager and customer functionality, through a console and android application respectively.

Features

Manager

  • Add an airbnb for hosting.
  • Add availability to an airbnb you own.
  • See the reservations of your airbnb(s).
  • See total reservation by area for a selected period of time

Customer

  • Search airbnbs trough filters (area, date range, price range, rating, number of people staying)
  • See details of the airbnb (photos, map area, number of room, bathrooms etc.)
  • Book an airbnb
  • Rate the airbnb (1-5 star rating)
  • View your bookings.
  • View your account details.

Compile and Run

  1. Go to backend/src/main/java/com/example/roomie/backend/config and update the the hosts correctly.
  2. Compile and run the files
>> javac Master.java
>> javac Worker.java
>> javac Reducer.java
>> java Reducer
>> java Worker
>> java Master
  1. For the manager console

    >> javac ConsoleApp.java
    >> java ConsoleApp
  2. For android app

    4.1 locate BackendCommunicator and update the host for the Master

    4.2 download and run the app

**Note: you can run as many Workers as you want but update the configurations for its one correctly.

Collaborators

You can find a demo video here.

About

An implementation of a distributed room booking mobile app, we created during our third year at AUEB's Distributed Systems course. This implementation leverages the MapReduce framework.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •