Универсальный шаблон веб-приложения c использованием пакетного менеджера Packager и архитектуры Porto.
За основу взят PHP-фреймворк Laravel.
Используются следующие библиотеки и пакеты:
- Spatie: Laravel Data
- Spatie: Laravel Permissions
- Spatie: Laravel Media Library
- Nova (Admin Panel)
- Laravel Passport
- JWT-auth
- IDE-helper
Все команды необходимо выполнять в терминале, находясь непосредственно в папке с проектом.
cp .env.example .envcomposer config http-basic.nova.laravel.com <email> <license-key>- вместо<email>и<license-key>укажите свои креды для Nova.composer installphp artisan sail:install- выбираем: pgsql, redis, minio, mailpit.sail up -dsail artisan nova:installsail migratesail artisan db:seed --class=Curia\\Auth\\Database\\Seeders\\UsersSeeder
Для полноценной работы проекта вам потребуется настроить Minio.
По умолчанию путь к консоли Minio расположен по адресу: http://127.0.0.1:8900/
Данные для входа: логин sail, пароль password
Для начала необходимо создать новый bucket:
http://127.0.0.1:8900/buckets/add-bucket - просто впишите имя в поле Bucket Name и нажмите на кнопку Create Bucket
Сделайте bucket публичным:
перейдите по адресу http://127.0.0.1:8900/buckets и выберите свой бакет. В открывшемся окне нажмите на иконку карандаша, рядом с тектом Access Policy и выберите Public из выпадающего списка в форме. Не забудьте сохранить изменения кнопкой Set.
Далее создайте новый ключ для доступа к Minio по адресу: http://127.0.0.1:8900/access-keys/new-account
Осталось прописать все данные в .env (в параметрах AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY необходимо указать созданный ранее ключ, а в AWS_BUCKET назание вашего бакета):
AWS_URL=http://minio:9000
AWS_BUCKET=curia
AWS_ACCESS_KEY_ID=vdKtAHVY7gg4qUNy
AWS_SECRET_ACCESS_KEY=LUtMHVlqBm5BxFify5YvXhZuVnCHHV9i
AWS_DEFAULT_REGION=us-east-1
AWS_USE_PATH_STYLE_ENDPOINT=trueДелаем запрос GET /api/v1/base/test - можно прямо в URL-строке браузера.
По умолчанию вход в админ-панель расположен по адресу: http://127.0.0.1/nova/login
Данные для входа: почта [email protected], пароль password