Brints Estate is a real estate website that allows users to search for properties, view property details, and contact the real estate owner/realtors. This is the backend service of the website that provides the API for the frontend to consume. The aim of this project is to learn how to build a full-stack web application using the MERN stack. Brints Estate Backend Service will bridge the gap for users to search for properties and process acquisition of the property in record time. Admin, Realtors and landlords can upload, update and delete property.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Node.js - JavaScript runtime built on Chrome's V8 JavaScript engine.
- MongoDB - NoSQL database.
- Postman - API development environment.
- Git - Version control system.
- Yarn - Dependency management.
- TypeScript - TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
- ESLint - Linting utility.
- Nginx - Web server.
- Docker - Containerization platform.
- Clone this repository using
git clone
command. - Navigate into the cloned repository using the
cd
command. - Install dependencies using the
yarn
command. - Create a
.env
file in the root directory of the application. See.env.sample
for a sample. - Build the application using the
yarn build
command. - Start the application by running
yarn start
command.
- The API documentation is available here.
- Run the tests using the
yarn test
command.
- The application is deployed to Heroku. See here for the deployed application.
- Node.js - JavaScript runtime built on Chrome's V8 JavaScript engine.
- Express - Fast, unopinionated, minimalist web framework for Node.js.
- MongoDB - NoSQL database.
- Mongoose - Elegant MongoDB object modeling for Node.js.
- JWT - JSON Web Tokens.
- Bcrypt - A library to help you hash passwords.
- TypeScript - TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
- Docker - Containerization platform.
- Nginx - Web server.