Stay Search is a polished front-end concept for browsing short-term rentals with practical trip-planning tools. The app combines fast filtering, date validation, favorites, and saved stay estimates in a single static web experience powered by local JSON data.
- Search stays by property name, city, or country
- Filter by guest capacity, nightly budget, and minimum rating
- Validate check-in/check-out dates and calculate trip length
- Sort results by price or rating
- Save favorites with
localStorage - Save trip estimates based on
nights * price_per_night - Clear the saved trips sidebar in one click
- Render all stay cards from structured JSON data
The stay catalog includes 9 curated listings across multiple countries. Each record contains:
idnamecitycountryprice_per_nightratingmax_guestsamenitiesimagebedrooms
- HTML5
- CSS3
- Vanilla JavaScript
- JSON for listing content
- Python
unittestfor lightweight validation
stay-search-web-app/
├── index.html
├── app/
│ ├── assets/
│ │ ├── app.js
│ │ └── styles.css
│ └── data/
│ └── listings.json
└── tests/
└── test_listing_data.py
Serve the project from the repository root:
python3 -m http.server 8000Then open http://localhost:8000.
python3 -m unittest discover -s tests -qThe test suite verifies the enriched listing schema and checks that the front-end code includes the required persistence features for favorites and saved trips.
Instead of a thin demo with basic filtering, this version behaves more like a real booking shortlist tool. Users can validate dates, estimate total trip cost, keep persistent favorites, and maintain a sidebar of saved options while browsing a richer dataset.
Released under the MIT License. See LICENSE for details.