Download the PHP package phpsoftbox/app-backend without Composer
On this page you can find all versions of the php package phpsoftbox/app-backend. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download phpsoftbox/app-backend
More information about phpsoftbox/app-backend
Files in phpsoftbox/app-backend
Package app-backend
Short Description Backend application skeleton for PhpSoftBox
License MIT
Informations about the package app-backend
App Backend
Минимальный backend‑скелет приложения на PhpSoftBox.
Установка через create-project
Быстрый старт
1) Окружение после create-project будет создано автоматически — config/env/.env из примера со случайным
APP_KEY (composer app:generate-key). Вручную:
APP_ENV — dev, test, demo или prod (production, development, local, testing приводятся к ним);
неизвестное значение — ошибка конфигурации.
2) Установи зависимости:
3) Запусти Vite:
Структура
src/Cli- handlers консольных команд приложенияsrc/Feature/{FeatureName}/Command/*- command + handler бизнес-сценариевsrc/Http/Action- invokable HTTP actionssrc/Http/Request-RequestSchemasrc/Http/Resource- API resourcessrc/Inertia- базовые shared data providers для Inertiasrc/Rule- кастомные validation rulesdatabase/fixtures- fixtures для интеграционных тестов и seed-like сценариевdatabase/migrations- base-skeleton миграции, включаяusers,user_tokens, roles/permissionslocal- runtime-корень приложения;storage,logs,cacheсоздаются черезApp\Path
Auth recipe использует DatabaseUserProvider, SessionGuard, remember-cookie
restore flow и AreaAccessMiddleware для admin area. Минимальные таблицы
users, user_tokens, roles, permissions, role_permissions,
user_roles, user_permissions лежат в database/migrations.
Для кастомного приложения package-миграции можно опубликовать из vendor:
По умолчанию session хранится через native PHP session. DB session storage
включается явно через APP_SESSION_DRIVER=database.
SSR для Inertia выключен по умолчанию. Включайте его явно через INERTIA_SSR=1
и настройку VITE_SSR_URL, когда SSR server реально запущен.
Теги dev-сервера Vite выводятся только в окружении dev (или при vite.dev = true в конфиге); в остальных
окружениях нужен собранный public/build/manifest.json (yarn build).
Продакшен
-
APP_ENV=prod: DI-контейнер компилируется вlocal/cache/di. При деплое послеcomposer installсбросьте его до перезапуска воркеров, иначе останется контейнер от прошлой версии кода: - За балансировщиком задайте
APP_TRUSTED_PROXIES— иначе IP клиента и схема будут адресом и схемой балансировщика. - Необработанные исключения пишутся в
local/logs/app.log(App\Runtime\FileLogger, по строке JSON на запись). Для ротации и каналов заменитеLoggerInterfaceвconfig/definitions/http.phpна полноценный логгер. - Долгоживущий процесс (воркер очереди, RoadRunner/Swoole): после каждой задачи или запроса вызывайте
$container->get(ServicesResetter::class)->reset()— сбрасывает warmup БД, identity map ORM, кеш прав и очередь cookie, состояние Inertia (share, хлебные крошки, meta, вкладки) (config/definitions/runtime.php). Для воркераphpsoftbox/queue— параметрresetStateуWorker. - Эндпоинты профайлера (
PROFILER_ENDPOINT, по умолчанию/__profiler/api/traces) регистрируются только вdevприPROFILER_ENABLED=1: они отдают трассы запросов без авторизации. - Хранилище трасс ограничено:
PROFILER_MAX_TRACES(500) иPROFILER_MAX_AGE_SECONDS(сутки, только file); сбои сохранения трасс пишутся в лог, запрос не падает. - Корень local-дисков Storage без своего
rootPath—local/storage(абсолютный путь изPath).
Проверки
All versions of app-backend with dependencies
phpsoftbox/application Version ^1.0
phpsoftbox/auth Version ^1.0
phpsoftbox/cache Version ^1.0
phpsoftbox/cli-app Version ^1.0
phpsoftbox/collection Version ^1.0
phpsoftbox/config Version ^1.0
phpsoftbox/container Version ^1.0
phpsoftbox/cookie Version ^1.0
phpsoftbox/database Version ^1.0
phpsoftbox/encryptor Version ^1.0
phpsoftbox/env Version ^1.0
phpsoftbox/http-emitter Version ^1.0
phpsoftbox/http-message Version ^1.0
phpsoftbox/inertia Version ^1.0
phpsoftbox/inflector Version ^1.0
phpsoftbox/orm Version ^1.0
phpsoftbox/profiler Version ^1.0
phpsoftbox/request Version ^1.0
phpsoftbox/resource Version ^1.0
phpsoftbox/router Version ^1.0
phpsoftbox/session Version ^1.0
phpsoftbox/storage Version ^1.0
phpsoftbox/validator Version ^1.0
phpsoftbox/vite Version ^1.0
psr/log Version ^3.0