Skip to content

MaxSSol/booking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Аналог системи Booking.com

example workflow

Технічні відомості

  • PHP 7.4
  • Laravel 8
  • Vue.js 3
  • Vuex
  • Nginx
  • MySQL
  • Docker compose
  • Ubuntu 20.04

Для запуску проекту потрібно мати

-docker v 20.10.12^ -docker-compose v 1.26.0^

Створіть .env файл, для цього скопіюйте .env.example. У створеному файлі .env потрібно вказати:

  • APP_URL(Наприклад http://localhost:8082)
  • APP_PORT(Наприклад 8082)
  • DB_HOST(mysql)
  • SANCTUM_STATEFUL_DOMAINS(Вказуємо адресу з localhost:8082)
  • DB_USERNAME(Можете змінити на свою назву)
  • DB_PASSWORD(Вкажіть пароль)
  • FORWARD_DB_PORT(Наприклад 33061)
  • SESSION_DOMAIN(Якщо APP_ENV=http://localhots, вказуємо localhost)
  • SESSION_SECURE_COOKIE(false)

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

docker-compose up --build

Важливо, якщо порт 8082 занятий, треба змінити його у .env файлі. Далі треба запустити міграції, для цього потрібно перейти у контейнер app. Спочатку візьмем container id. Для цього виконаємо команду:

docker ps

docker ps

docker exec -it container_id /bin/bash

docker exec

Виконаємо команду composer i:

composer i

Виконаємо команду php artisan key:generate:

php artisan key:generate

Виконаємо міграції і запустимо seed:

php artisan migrate:fresh --seed

Виконаємо встановлення необхідних пакетів за допомогою команди:

docker-compose run npm i --force

Також, треба запустити npm run watch:

docker-compose run npm run watch

Важливо Для коректної роботи сайту, потрібно налаштувати mail сервіс. Під час розробки використовувався mailtrap. Це потрібно для посилання повідомлень, після реєстрації, створення бронювання та після підтвердження бронювання

Результат виконання всіх команд:

home-page mobile-view

Проект доступний за посиланням localhost:8082

Реалізований функціонал

  • Реєстрація. Кожен користувач може створити особистий кабінет.
  • Підтвердження електронної пошти. Після реєстрації або замовлення повторного листа в особистому кабінеті, без підтвердження користувач немає можливості додати готель.
  • Особистий профіль. В особистому кабінеті, можна змінювати контактну інформацію, додати зображення профілю та повторно замовити лист для підтвердження електронної адреси.
  • Панель користувача. В особистому профілю є навігаційне меню: Бронювання, Налаштування, Зареєструвати своє житло та Особистий кабінет власника.
  • Пошук. Сайт має гарний та зручний пошуковий рядок.
  • Фільтри. Можемо фільтрувати житло за допомогою зручних фільтрів.
  • На завершені бронювання, можемо додавати відгуки.

Опції для власників

  • Створення облікового запису, реєстрація нерухомості, додавання та видалення властивостей
  • Підтвердження та скасування бронювань. Кожен власник може підтверджувати або скасовувати бронювання, після чого, особа яка здійснила бронювання отримає лист.