Skip to content

aelassas/movinin

Repository files navigation

build test codecov

Movin' In

Movin' In is a Rental Property Management Platform, agency-oriented with an admin dashboard for managing properties, customers and bookings, a frontend and a mobile app for renting properties.

Movin' In is built with React for its powerful rendering capabilities, MongoDB for flexible data modeling, and Stripe for secure payment processing.

With Movin' In, you can deploy your own customizable property rental marketplace at minimal cost using the Docker-based setup. The platform integrates Stripe for secure payments and can be efficiently hosted on a 1GB RAM droplet, making it an ideal choice for single/multi-agency operations looking for a scalable and cost-effective solution. You can deploy this solution for under $5/month using cloud providers like Hetzner or DigitalOcean.

Movin' In is designed to work with multiple agencies. Agencies can manage their properties and bookings from the admin dashboard. Movin' In can also work with a single agency and can be used as a property rental aggregator.

From the admin dashboard, administrators can create and manage agencies, properties, locations, users and bookings.

When new agencies are created, they receive an email prompting them to create their account to access the admin dashboard and manage their properties, customers and bookings.

Customers can sign up from the frontend or the mobile app, search for available properties based on location point and time, choose a property and complete the checkout process.

A key design decision was made to use TypeScript instead of JavaScript due to its numerous advantages. TypeScript offers strong typing, tooling, and integration, resulting in high-quality, scalable, more readable and maintainable code that is easy to debug and test.

Features

  • Agency management
  • Ready for one or multiple agencies
  • Property management
  • Booking management
  • Payment management
  • Customer management
  • Multiple login options (Google, Facebook, Apple, Email)
  • Multiple payment methods (Credit Card, PayPal, Google Pay, Apple Pay, Link, Pay Later)
  • Operational Stripe Payment Gateway
  • Multiple language support (English, French)
  • Multiple pagination options (Classic pagination with next and previous buttons, infinite scroll)
  • Responsive admin dashboard and frontend
  • Native Mobile app for Android and iOS with single codebase
  • Push notifications
  • Secure against XSS, XST, CSRF and MITM
  • Supported Platforms: iOS, Android, Web, Docker

Live Demo

Frontend

Admin Dashboard

Mobile App

You can also install the Android App by downloading the APK and installing it on any Android device.

Resources

  1. Overview
  2. Why Use Movin' In
  3. Architecture
  4. Installing (Self-hosted)
  5. Installing (VPS)
  6. Installing (Docker)
    1. Docker Image
    2. SSL
  7. Setup Stripe
  8. Build Mobile App
  9. Demo Database
    1. Windows, Linux and macOS
    2. Docker
  10. Run from Source
  11. Run Mobile App
    1. Prerequisites
    2. Instructions
    3. Push Notifications
  12. Change Currency
  13. Add New Language
  14. Unit Tests and Coverage
  15. Logs

License

Movin' In is MIT licensed.