aircnc

AirCnC - Renting company spots for coding (Omnistack 9.0)

Stars
0

🏒 AirCnC

A company uses the browser client of the app to register spots for rent (for coding, with an specific programming language). Then a user, using the mobile version of the app, can make a booking indicating the day. After that, the booking request will be shown for the company who can accept or reject the proposal. (Course produced by @RockeatSeat and teached by @diego3g). The project is divided in three modules:

πŸ“Ÿ Backend

Developed in NodeJS, is an API Rest that attend requests from the web version of the frontend as well as from the mobile version.

πŸ’» Frontend

Developed in ReactJS, this browser client is basically an admin panel for a company to register new Spots (adding photos, programming languages and daily cost). After a user makes a booking request, a message is displayed to the company for accept or reject the book proposal (In real time, with socket-io).

πŸ“± Mobile

Developed in React Native, using Expo, this client is used by the user to search spots filtered by programming languages of his interest. He can make a booking proposal with an specific day, and will be answered if the booking is accepted or rejected in real time when the company makes a response.

πŸ“ Modules

▢️ How to run

ItΒ΄s necessary to have installed: Node.js (LTS), NPM or Yarn and Expo.

Backend

There is a script, dev (using Nodemon for development purpose), declared at backend/package.json to run the server.

cd backend/
npm run dev

Frontend

cd frontend/
npm start

Mobile

It is possible to run the app in a emulator (Genymotion | XCode) as well as in the own phone. To run in an Android emulator you can download Genimotion. With the emulator running as well as the mobile app, at the Metro Bundler (http://localhost:19002) select the option "Run on android device or simulator". It will automatically seach for the genymotion instance. Otherwise its possible to run in your phone device donwloading the expo app in the Play Store, and scan the QR code that appears at the bundler admin page.

cd mobile/
npm install -g expo-cli
expo start

🧱 Built With

  • MongDB - Database System
  • Express - Routing framework
  • React - Javascript client side
  • React-Native - Native mobile client app
  • NodeJS - The server-side JavaScript runtime environment
  • Expo - An open-source platform for making universal native apps for Android, iOS, and the web with JavaScript and React.

Acknowledgments

  • This project is developed as a part of the Omnistack Week 9.0 by Rocketseat

πŸ“Έ Screens - Web Version

πŸ“Έ Screens - Mobile Version

πŸ“Ή Booking Demo