asmi/laravel-faq

Laravel package with FAQ model, migration, seeder and Blade component

Maintainers

Package info

github.com/asmi046/faq_laravel

pkg:composer/asmi/laravel-faq

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.1 2026-05-28 16:08 UTC

This package is auto-updated.

Last update: 2026-05-28 17:30:34 UTC


README

Пакет добавляет готовый FAQ-компонент для Laravel и команды для публикации файлов в проект:

  • модель Faq
  • сидер FaqSeeder
  • миграция таблицы faqs

Пакет ориентирован на быстрый старт: вы устанавливаете пакет, публикуете нужные файлы командами и сразу используете компонент на странице.

Компонент работает без публикации модели и сидера.

Возможности

  • Eloquent-модель FAQ (Asmi\\LaravelFaq\\Models\\Faq) внутри пакета.
  • Blade-компонент <x-faq-package-faq section="..." />.
  • Генерация JSON-LD (FAQPage) для SEO.
  • Artisan-команды для публикации миграции, модели и сидера в приложение.

Требования

  • PHP 8.1+
  • Laravel 10/11/12

Установка

composer require asmi/laravel-faq

Сервис-провайдер подключается автоматически через package discovery.

Нужно ли публиковать файлы

Коротко: нет, не обязательно.

  • Провайдер подключается автоматически.
  • Blade-компонент доступен сразу после установки.
  • Миграция таблицы faqs загружается прямо из пакета, поэтому достаточно выполнить php artisan migrate.

Публикация нужна только если вы хотите получить копии файлов в своем приложении и редактировать их локально.

Публикация файлов в приложение

1) Миграция

php artisan faq:publish-migration

Команда создаст файл в database/migrations с текущим timestamp.

2) Модель

php artisan faq:publish-model

Команда создаст app/Models/Faq.php.

3) Сидер

php artisan faq:publish-seeder

Команда создаст database/seeders/FaqSeeder.php.

Принудительная перезапись

Для всех команд доступна опция:

--force

Пример:

php artisan faq:publish-model --force

Использование

  1. Выполните миграции:
php artisan migrate
  1. При необходимости опубликуйте сидер и отредактируйте данные.

  2. Запустите сидер:

php artisan db:seed --class=FaqSeeder
  1. Вставьте компонент в Blade-шаблон:
<x-faq-package-faq section="Купить проезд на море" />

Что рендерит компонент

  • Список вопросов/ответов по секции (section) из таблицы faqs.
  • Скрипт JSON-LD (application/ld+json) для поисковых систем.

Лицензия

MIT