Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/anchit1909/rentify-house-rental-django-nextjs

Rentify is a house rental platform with a NextJs, Typescript, and Tailwind CSS frontend, and a Python, Django, and PostgreSQL backend. It offers features such as user registration, apartment listings, search filters, chat with hosts, booking, and reservation management.
https://github.com/anchit1909/rentify-house-rental-django-nextjs

django docker nextjs nginx postgresql python socket-io tailwindcss typescript

Last synced: 27 days ago
JSON representation

Rentify is a house rental platform with a NextJs, Typescript, and Tailwind CSS frontend, and a Python, Django, and PostgreSQL backend. It offers features such as user registration, apartment listings, search filters, chat with hosts, booking, and reservation management.

Awesome Lists containing this project

README

        

Rentify - house rental platform

Rentify


House Rental Platform



Anchit Sinha Twitter follower count


SocialAPI repo star count


Introduction ·
Features ·
Tech Stack ·
Running Locally ·
Author



## Introduction

Rentify is a house rental platform. The frontend of the application is built using NextJs, Typescript, Tailwind CSS and the backend is built using Python, Django, PostgreSQL. The backend is containerized and is deployed on a VM instance in the cloud using an Nginx Server.

## Features

- Register and Login to the platform
- Create a new apartment listing.
- Explore all listed apartments on the home page.
- Filter apartments based on categories, location, no. of bedrooms, bathrooms and no. of guests.
- Chat with apartment host using socket connection.
- Book your favorite apartment.
- View listed properties.
- View favorite properties.
- View your reservations.

## Tech Stack

- [Python](https://www.python.org/)
- [Django](https://www.djangoproject.com/)
- [PostgreSQL](https://www.postgresql.org/)
- [NextJs](https://nextjs.org/)
- [Typescript](https://www.typescriptlang.org/)
- [Tailwind CSS](https://tailwindcss.com/)
- [Socket IO](https://socket.io/)
- [Docker](https://www.docker.com/)
- [Nginx](https://nginx.org/en/)

## Screenshots

### Home Page

Home Page

### Apartment Page

Apartment Page

### Search Modal

Search Modal

### Add Property Modal

Add Property Modal

### Chat screen

Chat screen

### My Reservations Page

My Reservations Page

### My Favorites Page

My Favorites Page

## Running Locally

### Cloning the repository to the local machine.

```bash
git clone
```

### Go to frontend folder

```bash
cd frontend
```

### Installing the dependencies.

```bash
npm install
```

### Running the application.

Then, run the application in the command line and it will be available at `http://localhost:3000`.

```bash
npm run dev
```

### Go to backend

```bash
cd backend
```

### Storing API key in .env file.

Create a file in backend root directory of project named **.env.dev**. And store your postgresDB keys in it, as shown in the .env.dev file.

### Build the image

```bash
docker compose -f docker-compose.yml build
```

### Run the container

Then, run the application in the command line and it will be available at `http://localhost:8000`.

```bash
docker compose -f docker-compose.yml up -d
```

## Author

- Anchit Sinha ([@anchit1909](https://twitter.com/anchit1909))