drsnoxvell-bit / base-shop
Базовый интернет-магазин на Laravel и Orchid. Установка: composer create-project drsnoxvell-bit/base-shop.
Requires
- php: ^8.2
- laravel/framework: ^12.0
- laravel/socialite: ^5.31
- laravel/tinker: ^2.10.1
- orchid/platform: ^14.0
- socialiteproviders/vkontakte: ^5.1
- socialiteproviders/yandex: ^4.1
Requires (Dev)
- fakerphp/faker: ^1.23
- laravel/pail: ^1.2.2
- laravel/pint: ^1.13
- laravel/sail: ^1.41
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.6
- phpunit/phpunit: ^11.5.3
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-03 08:59:17 UTC
README
Базовый интернет-магазин на Laravel 12 и Orchid 14. Основной способ установки — Docker (на компьютере достаточно Docker Desktop). PHP, Composer, Node, npm и MySQL поднимаются контейнерами.
Пакет: packagist.org/packages/drsnoxvell-bit/base-shop.
Что входит
- Каталог, карточка товара с галереей, корзина, оформление заказа без онлайн-оплаты
- Админка Orchid: категории, товары, заказы, настройки сайта и SMTP
- Роли: администратор, редактор, пользователь
- Регистрация, вход, OAuth Яндекс и ВКонтакте
Требования
- Docker Desktop (или Docker Engine + Compose v2)
Локальные PHP, Node, nvm и MySQL не нужны.
Установка
Нужен запущенный Docker Desktop (кит в трее не анимируется, статус Running).
В папке сайта. Не используйте irm | iex и не используйте Invoke-WebRequest (PowerShell 5.1 подставляет старый файл из кэша). Скачайте через curl.exe. В папке может лежать сам install.ps1.
curl.exe -fsSL -o install.ps1 https://raw.githubusercontent.com/drsnoxvell-bit/base-shop/main/install.ps1 powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1
Если репозиторий уже на диске:
cd C:\OSPanel\home\baseLaravelShop
.\install.bat
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/drsnoxvell-bit/base-shop/main/install.sh | bash
Установщик сам: проверит Docker, скачает проект, спросит версии PHP / Node / MySQL, поднимет контейнеры и запустит shop:install (стек витрины 1–5).
Сайт: http://localhost:8080. Админка: http://localhost:8080/admin.
php artisan shop:install — стек витрины 1–5, миграции, администратор, npm.
- Blade — шаблоны Laravel, без Vue/React
- Inertia + Vue — монолит Laravel + Vue
- Inertia + React — монолит Laravel + React
- Laravel API + Vue SPA
- Laravel API + React SPA
Невыбранные фронты не ставятся.
Неинтерактивно:
docker compose exec app php artisan shop:install --stack=1 docker compose exec app php artisan shop:install --stack=3
Смена версий
В .env измените PHP_VERSION, NODE_VERSION или MYSQL_VERSION и пересоберите:
docker compose build --no-cache app docker compose up -d
Либо снова запустите .\install.bat / bash install.sh.
Запасной путь: OSPanel / локальный PHP
Если Docker не используете:
composer create-project drsnoxvell-bit/base-shop . --stability=dev php artisan shop:install
Нужны PHP 8.2+, Composer 2, Node.js 18+, MySQL. В OSPanel модуль MySQL должен быть включён; инсталлятор сам поставит DB_HOST=mysql-8.0, если 127.0.0.1 недоступен.
Если composer пишет Could not open input file: \composer.phar:
& "C:\ProgramData\ComposerSetup\bin\composer.bat" create-project drsnoxvell-bit/base-shop . --stability=dev
Это скелет приложения (type: project), как Laravel. В уже готовый Laravel его нельзя поставить через composer require.
OAuth Яндекс и ВКонтакте
В кабинете приложения укажите callback:
{APP_URL}/auth/yandex/callback{APP_URL}/auth/vkontakte/callback
В .env:
YANDEX_CLIENT_ID=
YANDEX_CLIENT_SECRET=
VKONTAKTE_CLIENT_ID=
VKONTAKTE_CLIENT_SECRET=
Если пользователя ещё нет, он создаётся с ролью «пользователь». Если email совпал — вход привязывается к существующему аккаунту. Если ВК не отдал email, создаётся технический адрес vkontakte-{id}@users.local.
Роли
- Администратор — каталог, заказы, настройки, пользователи и роли
- Редактор — категории, товары, заказы (без настроек и пользователей)
- Пользователь — витрина, профиль и свои заказы, без
/admin
Регистрация и соцсети всегда создают роль «пользователь».
Вклад в upstream
Публичный репозиторий только для чтения у всех, кроме владельца drsnoxvell-bit. git push в origin у установщика будет отклонён. Не добавляйте коллабораторов с правом Write.
Пакет: packagist.org/packages/drsnoxvell-bit/base-shop. Новый релиз — git-тег (v1.1.0 и т.п.), Packagist подхватит сам.
См. docs/UPGRADE.md.