Проект: Fridda - сервис аренды квартир

Обязанности:

  • Построение SPA приложения для краткосрочной аренды недвижимости при помощи Nuxt 3 и vue.js 3 Composition api.
  • Интеграция с сервисами Bnovo, Avito, Yandex при помощи REST API. Сохранение данных от этих сервисов при помощи базы данных MongoDB
  • Интеграция Яндекс Карт с vue-yandex-maps и настройка отображения квартир по геопозициям от Bnovo или генерация гео-кода по адресу квартиры.
  • Автоматизация статусов бронирования, формирования pdf документов, отправка сообщений и отчетов на почту при помощи jspdf и nodemailer.
  • Настройка регистрации и аутентификации пользователей с next-auth, bcrypt.
  • Поддержка состояния приложения в рамках pinia store.
  • Создание личного кабинета администратора. Интеграция расписания бронирования гостей при помощи диаграммы Ганта.
  • Создание личного кабинета гостя. Взаимодействие гостя с избранными квартирами и возможностью отслеживания статуса брони квартиры.
  • Адаптивная и валидная верстка компонентов при помощи Bootstrap.
  • Валидация полученных данных от пользователей при помощи Yup
  • Написание автотестов vitest (jest)
  • Настройка CI/CD проекта. Настройка интеграции деплоинга проекта на стороннем хостинге при помощи GitHub и Docker File.
  • Добавление локалей при помощи i18n.
  • Интеграция эквайринга МТС Банка.
  • Добавление и настройка Яндекс Метрики.

Достижения:

  • Разработал с нуля сервис по краткосрочной аренде жилья https://fridda.ru за 5 месяцев
  • Добился отрисовки первого контента за 0.3 секунды FCP. Сумма отрисовки всего контента оптимизирована до 110мс TBT. Поисковая оптимизация реализована на 75 баллов по версии page speed.
  • Покрыл 60% кода автотестами.
  • Освоил работу SSR в рамках Nuxt 3. Изучил новые технологии: mongoose для работы с базой данных MongoDB, nuxt-scheduler для cron задач, vitest для написание автотестов.
  • Сэкономил деньги клиенту, взяв работу по разработке сайта полностью на себя.

Технологии:

AxiosBootstrapHTMLJSJSPDFJestNextAuthNodemailerNuxt 3PiniaRest-apiSCSSViteVitestVue-yandex-mapsVue.js 3Yupbcrypt
Посмотреть сайт