Разработка интернет магазина недвижимости на нативном JavaScript

Реализация интернет магазина продажи квартир на нативном JavaScript.

Оглавление статьи

  1. Описание проекта
  2. Функционал проекта
  3. Итоги проекта

Описание проекта

Основная идея заключалась в создании проекта с применением полученных знаний при изучении JavaScript. За основу был взят проект, разработанный в рамках этой статьи.

Дизайн, идея проекта, а так же API был взят из платного курса от webcademy.ru.

Функционал проекта

Роутинг

Маршрутизация в проекте выполнена как spa, что позволяет переходить по ссылкам сайта без обновления самой страницы. Поддерживаются два вида маршрутов:

  1. Старый вариант с использование хэшей #/foo/bar
  2. Актуальный вариант с использованием привычных ссылок /foo/bar

Фильтр товаров

При первом переходе на сайт пользователю отображаются все доступные товары. Фильтр позволяет выполнить выборку товаров по нужным критериям. Всего доступно 4 критерия по которым можно отфильтровать товары:

  1. Выбор проекта
  2. Количество комнат
  3. Площадь
  4. Стоимость
Фильтр товаров
Всего доступно 4 критерия по которым можно отфильтровать товары.

При выборке отображается количество найденных совпадений, с которыми пользователь может ознакомиться при нажатии на кнопку “Показать”.

Список товаров

Отображение товаров выполнено в двух стилях, между которыми можно переключаться:

  1. Плиткой
  2. Таблицей
Товары в виде плитки
Плитка.
Товары в виде таблицы
Таблица.

Сортировка товаров

Для каждого стиля отображения товаров предусмотрена свое оформление сортировки.

Сортировка в виде выпадающего списка
Сортировка в виде выпадающего списка.
Сортировка в виде заголовков таблицы
Сортировка в виде заголовков таблицы.

Избранное

Каждый товар может быть добавлен в избранное нажатием по соответствующей иконке в виде сердца.

Избранные товары
Каждый товар может быть добавлен в избранное.

Добавить товар в избранное можно как из главной страницы, так и через страницу самого товара.

Страница товара
Так и через страницу самого товара.

Все избранные товары отображаются в отдельной странице “Избранное”.

Избранные товары
Все избранные товары отображаются в отдельной странице "Избранное".

Так же избранные товары могут быть убраны из страницы “Избранное”, повторным нажатием на иконку сердца.

Страница товара

Имеется возможность ознакомиться с понравившимся товаром подробнее перейдя на его отдельную страницу.

Страница товара
Страница товара.

Бронь товара

Там же на странице товара имеется возможность его забронировать, нажав по кнопке “Забронировать” и заполнив форму.

Бронь товара
Форма бронирования товара.

Список заявок

Все отправленные заявки на бронь будут отображаться на отдельной странице “Заявки”.

Заявки
Страница заявок.

На странице заявок предусмотрена пагинация.

Итоги проекта

Работа была выполнена в рамках Пет проекта.

Ссылки на проект

Предыдущая работа Разработка сайта блог-портфолио под ключ с использованием Jekyll Следующая работа Разработка стартового шаблона для верстки статических сайтов на Jekyll