Skip to content

Приложение выдачи билетов со множеством фильтров и сортировок на Redux.

Notifications You must be signed in to change notification settings

seva123321/Aviasales

Repository files navigation

Aviasales — Приложение для поиска авиабилетов

React Redux Vercel Vite

Описание

Aviasales — это высокопроизводительное приложение для поиска авиабилетов, обрабатывающее до 11 000 записей с использованием технологии long polling.

Основные функции

  • Загрузка данных:
    • Постепенное получение билетов через long polling
    • Возможность работы с частичными данными до полной загрузки
    • Визуальный индикатор процесса загрузки
  • Фильтрация: Фильтрация билетов по количеству пересадок
  • Сортировка: 3 критерия сортировки: цена, время в пути, оптимальный вариант
  • Пагинация: Постепенная подгрузка по 5 билетов
  • Индикатор загрузки: Визуализация процесса загрузки данных

Ключевые преимущества

  • ✅ Мгновенный отклик интерфейса благодаря прогрессивной загрузке данных
  • ✅ Оптимизированная работа с большими массивами данных (11 000+ билетов)
  • ✅ Устойчивость к ошибкам сети и сервера
  • ✅ Адаптивный дизайн для комфортного использования на любых устройствах

Стек технологий

Frontend

  • React 19 — библиотека для создания пользовательского интерфейса
  • Redux Toolkit — управление состоянием приложения
  • Redux Thunk — middleware для асинхронных сценариев
  • CSS Modules — изолированные стили компонентов

Инструменты

  • Vite — инструмент сборки проекта
  • ESLint + Prettier — единый стиль кода
  • Vercel — платформа для деплоя приложения

Как использовать

  1. Перейдите на сайт приложения: Aviasales на Vercel
  2. Используйте фильтры для отбора билетов по количеству пересадок
  3. Выберите вариант сортировки билетов
  4. Нажимайте "Показать еще 5 билетов" для загрузки дополнительных результатов
  5. Индикатором загрузки покажет процесс загрузки всех данных

Установка и запуск

Для локального запуска выполните:

  1. Клонируйте репозиторий:

    git clone https://github.com/seva123321/Aviasales.git
    
  2. Перейдите в папку проекта:

    cd Aviasales
    
  3. Установите зависимости:

    npm install
    
  4. Запустите проект:

    npm run dev
    
  5. Откройте браузер и перейдите по адресу: http://localhost:5173.

Автор

About

Приложение выдачи билетов со множеством фильтров и сортировок на Redux.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages