Chez Toi: App

"Chez Toi" is an application for browsing and booking viewings for houses. It interacts with the Chez Toi API to provide users with up-to-date information on the houses that are available and the viewings that the user has booked.

The website consists of several pages:

  1. The "House Browser" page, where the user may view look through images and brief descriptions for the houses available for viewing and access the "House Details" page for any house that interests them.

  2. The "House Details" page, where a user can view further information about the selected house and access a form to book a viewing at that house if they choose.

  3. The "Viewings" page, where a user can see all the viewings that they have booked so far, and cancel any if they wish.

  4. The "Sign Up" page, where a user can create a new account - this is required in order to book a viewing.

  5. The "Log In" page, where a user can log in to an existing account using their e-mail address.

Live Demo

Built With

  • React - Bootstrapped using the create-react-app package.
  • Redux - Redux is used for storing state. The react-redux package was used to enable React bindings for Redux.
  • React Router - the react-router-dom package was used to allow navigation between pages.
  • Bootstrap and Font Awesome were both used, via their npm packages.
  • Kent Dodds' Testing Library - the /jest-dom and /react APIs were used for testing, on top of Jest, which is create-react-app's default testing suite.
  • ESLint linting JavaScript.

Local Setup

Prerequisites

node.js is a pre-requisite of this project.

Don't have node.js? Choose a download method here.

Setup Instructions

  1. Open a Terminal and navigate to the location in your system where you would like to download the project. New to Terminal? Learn here.

  2. Enter the following line of code to clone this repository:

git clone git@github.com:Joseph-Burke/Chez-Toi-App.git

  1. Now that the repository has been cloned, navigate inside it using cd Chez-Toi-App.

  2. The project's dependencies are managed by npm. The details of this project's dependencies can be found in package.json. To install them, enter the following line of code in the Terminal.

npm install

  1. Start the project with the npm start command. This will compile the code, start a server and open a browser for you to view the site.

Tests

To run tests, simply enter the npm test command in the terminal. This will begin create-react-app's built-in testing script, which will watch for changes and run tests automatically.

If you're interested in writing further tests for this project, refer to the documentation for Jest and Testing Library.

Author

👤 Joe Burke

🤝 Contributing

Contributions, issues and feature requests are always welcome!

Drop me a line through any of the channels listed above or head directly to the issues page.

Show your support

Hey! Give this project a ⭐️! It costs nothing :)

Acknowledgments

  • This project was built as part of the Microverse Web Development course, which you can learn more about here.
  • Based on a design by Murat Korkmaz.

📝 License

This project is MIT licensed.