Katia-Toboleva / react-resizable-input-with-filters

Hotel search engine with price filter (resizable input range) built with React and async code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hotel search engine with price filter (resizable input range) built with React and async code.

Description:

The app mimics a hotel search engine with a price filter. First, all the hotel options are fetched from a mock API. Then the user can filter the options by either moving toggles of the price range or changing values in the input fields. Any time the values are changed inputs, range input bar and filters are updated accordingly showing the hotels by the requested price range. It's also possible to move the bar to filter for a specific price range.

Note: The range is currently set up with "sticky" values (e.g. 10 steps) but the functionality of the app allows to switch to "non-sticky" values (by deleting "sticky" props) to offer precise price options.

Technologies:

React, JavaScript (JS mouse events), Async promises and fetch, Lifecycle events, TDD testing (Jest), GitHub branches, SCSS and CSS modules, Webpack, Babel, Eslint, Stylelint.

Demo:

  1. Getting started:

range-input-1

  1. Managing price range filter with toggles

range-input-2

  1. Managing price range filter with inputs

range-input-3

  1. Managing price range filter both with toggles and inputs

range-input-4

  1. Moving the range bar and filtering hotel options

range-input-5

About

Hotel search engine with price filter (resizable input range) built with React and async code

License:MIT License


Languages

Language:JavaScript 87.6%Language:SCSS 11.5%Language:HTML 0.9%