Skip to content

Repository files navigation

maxmoll_tz — тестовое (Laravel 7, Bootstrap 4)

Мини‑магазин: категории и товары, Blade‑шаблоны (не SPA), простая админка на ресурсных контроллерах.

Требования

  • PHP 7.4: mbstring, openssl, pdo_mysql, fileinfo, gd, bcmath
  • Composer 2.x
  • MySQL 5.7+/MariaDB 10.3+
  • Node.js 14 + npm

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

cp .env.example .env
composer install

# .env (пример)
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=maxmoll
# DB_USERNAME=root
# DB_PASSWORD=

php artisan key:generate
php artisan migrate --seed
php artisan storage:link

npm install --legacy-peer-deps
npm run dev

php artisan serve --host=127.0.0.1 --port=8000

Маршруты

  • / — каталог (пагинация 6)
  • /category/{slug} — страница категории
  • /product/{slug} — страница товара
  • Админка: /admin/categories, /admin/products

Slug

  • Если пусто — генерируется из названия.
  • Всегда нормализуется и делается уникальным при сохранении.
  • Старые URL после изменения slug — 404 (ожидаемо).

Верстка

  • Bootstrap 4, адаптив.
  • Меню «Каталог»: hover на desktop, tap на mobile.
  • Превью карточек: фикс. высота, object-fit: cover; object-position: top.
  • Модалка «добавлено в корзину» по клику «В корзину».

Деплой (кратко)

composer install --no-dev --optimize-autoloader
php artisan migrate --force
php artisan config:cache && php artisan route:cache && php artisan view:cache
npm run production

Docker (локально / PaaS)

Сборка и запуск:

docker build -t maxmoll_tz .
docker run --rm -p 8080:80 --env-file .env maxmoll_tz

Открыть http://127.0.0.1:8080

Fly.io (фри)

  1. Установить flyctl и войти: fly auth signup / fly auth login
  2. Создать app: fly apps create maxmoll-tz (или своё имя и поменять в fly.toml)
  3. Секреты (пример):
fly secrets set \
  APP_KEY="base64:..." \
  APP_ENV=production APP_DEBUG=false \
  DB_CONNECTION=mysql DB_HOST=... DB_PORT=3306 \
  DB_DATABASE=... DB_USERNAME=... DB_PASSWORD=...
  1. Деплой: fly deploy --remote-only
  2. GitHub Actions: добавьте секрет FLY_API_TOKEN и пушьте в main.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages