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

https://github.com/opifexm/sixcities

Six Cities is a web-based platform offering affordable rental options for travelers in six popular cities. It features user authentication, dynamic listing updates, interactive maps, and user reviews, all within a sleek, user-friendly interface.
https://github.com/opifexm/sixcities

axios eslint leaflet react reactredux reactrouter reacttoolkit typescript vite

Last synced: 4 months ago
JSON representation

Six Cities is a web-based platform offering affordable rental options for travelers in six popular cities. It features user authentication, dynamic listing updates, interactive maps, and user reviews, all within a sleek, user-friendly interface.

Awesome Lists containing this project

README

        

[![Node CI](https://github.com/opifexM/SixCities/actions/workflows/nodejs.yml/badge.svg)](https://github.com/opifexM/SixCities/actions/workflows/nodejs.yml)
[![Maintainability](https://api.codeclimate.com/v1/badges/30810ff2dda1421d6983/maintainability)](https://codeclimate.com/github/opifexM/SixCities/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/30810ff2dda1421d6983/test_coverage)](https://codeclimate.com/github/opifexM/SixCities/test_coverage)

# Six Cities

Six Cities is a sophisticated web application tailored for travelers seeking budget-friendly accommodation. It offers an efficient solution for finding rental properties in six popular cities. Developed with a modern tech stack, the service stands out with its user-friendly interface and detailed property listings.

## Description

The Six Cities app provides a seamless experience for users to browse and choose rental accommodations. It features a variety of pages including Main, Login, Favorites (private), and Offer, each with unique functionalities:

- **Main Page**: Showcases a list of cities and rental offers, with an interactive map and sorting options.
- **Login Page**: Handles user authentication.
- **Favorites Page**: Displays user-favorited listings, accessible only to authenticated users.
- **Offer Page**: Offers detailed information about each rental property.

Additionally, the app handles undefined routes with a custom 404 page, enhancing the user experience.

## Functionalities

- **Authentication**: Manages user sessions and access to private pages.
- **Dynamic Listing**: Updates rental offers and map markers based on the selected city.
- **User Reviews**: Allows authenticated users to post reviews on rental properties.
- **Favorites Management**: Enables users to add or remove properties from their favorites.

## Technologies

### Technologies Used
- **React & React DOM**: For building the user interface.
- **Redux Toolkit & React Redux**: For efficient state management.
- **Axios**: For making HTTP requests.
- **Leaflet**: To integrate interactive maps.
- **React Router DOM**: For app routing and navigation.

### Development Tools

- **Vite**: For efficient bundling and development.
- **TypeScript**: Ensuring type safety.
- **ESLint**: Maintaining code quality.
- **Jest & Testing Library**: For thorough testing of components and functionalities.

## License

This project is licensed under the ISC License.