Giter VIP home page Giter VIP logo

goit-adverts-app's Introduction

GOIT-ADVERTS-APP

Цей застосунок було розроблено для компанії, що надає послуги надання в Україні камперів в оренду.

Front-end

Застосунок складається з 3х сторінок:

  • домашня сторінка з загальним описом послуг, що надає компанія;

  • сторінка, що містить каталог камперів різної комплектації, які користувач може фільтрувати за місцем знаходження, обладнанням та типом;

  • сторінка з оголошеннями, які були додані користувачем в улюблені.

Зовнішній вигляд програми складається з навігації та області перегляду.

  • На сторінці каталогу реалізовано картку оголошення про здачу кампера в оренду та рендериться 4 оголошення, а їх решта - по кліку на кнопку Load more.

  • У разі кліку по кнопці у вигляді “серця” на картці оголошення воно додається до списку улюблених, а колір кнопки змінюється.

  • При оновленні сторінки фіксується кінцевий результат дій користувача. Тобто, якщо додати оголошення в улюблені та оновити сторінку - то кнопка все одно залишається в стані “улюбленого оголошення” із відповідним кольором.

  • У разі повторного кліку по кнопці у вигляді “серця” оголошення видаляється зі списку улюблених, а колір кнопки змінюється до початкового стану.

  • У разі кліку по кнопці Show more відкривається модальне вікно з детальною інформацією про кампер.

  • Модальне вікно закривається по кліку на кнопку у вигляді “хрестика”, по кліку на backdrop та натисканню на клавішу Esc.

  • В модальному вікні міститься інформація щодо особливостей кампера і відгуків про нього. Відмалювання інформації залежить від стану активної таби.

  • В модальному вікні також міститься форма для оформлення бронювання камперу, що складається з полів name, email, booking date і comment. Поля name, email, booking date є обовʼязковими до заповнення і проходять перевірку на валідність введених значень.(У випадку невалідних даних форма не відправляється, у випадку валідної форми - сторінка оновлюється).

Back-end

Для роботи зі списком оголошень створено персональний бекенд для розробки за допомогою UI-сервісу https://mockapi.io/. Створено ресурс adverts. Використано конструктор ресурсу та описано об'єкт оголошення.

Маршрутизація

У застосунку є такі маршрути:

  • “/” - домашня сторінка з загальним описом послуг, що надає компанія;

  • “/catalog” - сторінка, що містить каталог камперів різної комплектації;

  • “/favorites” - сторінка з оголошеннями, які були додані користувачем в улюблені.

Якщо користувач зайшов за маршрутом, якого не існує, він буде перенаправлений на домашню сторінку.

Бібліотеки

  • React + Vite
  • Redux Toolkit
  • Axios
  • Yup
  • React-hook-form
  • React-flatpickr та ін.

Деплой

Розробка

Для установки та запуску проєкту необхідно:

  • Встановити VSCode або подібний редактор коду.

  • Склонувати репозиторій та запустити редактор коду.

    • Послідовність дій через термінал:
git clone https://github.com/MolchanovaOlga/goit-adverts-app.git

cd yourproject
  • Для установки залежностей виконати команду:
npm install
  • запустити проєкт в режимі розробки (npm)":
npm run dev

або (yarn):

npm start

Контактна інформація

goit-adverts-app's People

Contributors

molchanovaolga avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.