PHPackages                             sukohi/maven - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. sukohi/maven

ActiveLibrary

sukohi/maven
============

A Laravel package to manage FAQ.

4.0.0(9y ago)51.2k6[1 issues](https://github.com/SUKOHI/Maven/issues)MITPHP

Since Nov 13Pushed 8y ago1 watchersCompare

[ Source](https://github.com/SUKOHI/Maven)[ Packagist](https://packagist.org/packages/sukohi/maven)[ RSS](/packages/sukohi-maven/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (5)Versions (17)Used By (0)

Maven
=====

[](#maven)

A Laravel package to manage FAQ.
(This package is for Laravel 5.3+)

***[Demo](http://demo-laravel52.capilano-fw.com/admin/maven)***

[!['Example'](https://camo.githubusercontent.com/0df020d42075c16c2e12258de42b3dbf0ee9496a8cb6b8dd740e48f4aad51539/687474703a2f2f692e696d6775722e636f6d2f754d735a4178702e706e67)](https://camo.githubusercontent.com/0df020d42075c16c2e12258de42b3dbf0ee9496a8cb6b8dd740e48f4aad51539/687474703a2f2f692e696d6775722e636f6d2f754d735a4178702e706e67)

Requirements
============

[](#requirements)

- [LaravelCollective/html](https://github.com/LaravelCollective/html)
- [sukohi/cahen](https://github.com/SUKOHI/Cahen)
- [sukohi/smoothness](https://github.com/SUKOHI/Smoothness)
- [sukohi/neatness](https://github.com/SUKOHI/Neatness)

Installation
============

[](#installation)

Execute the next command.

```
composer require sukohi/maven:4.*

```

Set the service providers in app.php

```
'providers' => [
    ...Others...,
    Collective\Html\HtmlServiceProvider::class,
    Sukohi\Cahen\CahenServiceProvider::class,
    Sukohi\Maven\MavenServiceProvider::class,
]

```

Also alias

```
'aliases' => [
    ...Others...,
    'Form' => Collective\Html\FormFacade::class,
    'Html' => Collective\Html\HtmlFacade::class,
    'Cahen'   => Sukohi\Cahen\Facades\Cahen::class,
    'Maven'   => Sukohi\Maven\Facades\Maven::class,
]

```

Then execute the next commands.

```
php artisan vendor:publish
php artisan migrate

```

Usage (Management page)
=======================

[](#usage-management-page)

Set `Maven::route()` in your `routes.php`.

```
\Sukohi\Maven\Maven::route();

// or with default locale

\Sukohi\Maven\Maven::route('en');

```

Now you can access to `http(s)://YOUR-DOMAIN/admin/maven. `
Note: I believe that you need to authenticate in routes.php before calling `Maven::route()` using middleware or something.

**\[Config\]**
After publishing, you should have `maven.php` in your config folder.
you can set some values in the file like the followings.

**locales**

First of all, you have only `en` locale.
You can add more locales if you want like so.

```
'locales' => [
    'en' => 'English',
    'ja' => 'Japanese',
    'es' => 'Spanish'
],

// or

'locales' => [
    'ja' => '日本語',
    'en' => '英語',
    'es' => 'スペイン語'
],

// The keys and values refer locale symbols and language names.

```

**URI**

The default value is `admin/maven`.
So `http(s)://YOUR-DOMAIN/admin/maven` is the URL for managing FAQs.

**Per Page**

You can change maximum records per page.

Usage (Retrieve data)
=====================

[](#usage-retrieve-data)

**\[Basic Way\]**

```
$faqs = \Maven::get();

foreach ($faqs as $faq) {

    if($faq->hasLocale('en')) {

        // FAQ
        echo $faq->getQuestion('en');
        echo $faq->getRawQuestion('en');
        echo $faq->getAnswer('en');
        echo $faq->getRawAnswer('en');

        // Tag(s)
        $tags = $faq->getTags('en');    // Collection

        // Others
        echo $faq->sort_id;
        echo $faq->unique_key;
        echo $faq->created_at;
        echo $faq->updated_at;

    }

}

```

**\[Filtering\]**

**Tag(s)**

```
$faqs = \Maven::tag([
    'en' => 'YOUR-TAG'
])->get();

// or

$faqs = \Maven::tag([
    'en' => ['YOUR-TAG', 'YOUR-TAG'],
    'ja' => 'タグ'
])->get();

```

([Raminsadeghi](https://github.com/Raminsadeghi) indecated an error here for me. Thank you for kind of you!)

**Unique Key**

```
$faq = \Maven::uniqueKey('952557a09ef19aae1d9e2a276db18a66')->first();

// or

$faqs = \Maven::uniqueKey([
    '952557a09ef19aae1d9e2a276db18a66',
    'fashrtrhstgrfaeargthukfyhdredeff',
])->get();

```

**Pagination**

```
{!! $faqs->links() !!}

```

**All Tag(s)**

```
$tags = \Maven::getAllTags();

// or with $draft_filter_flag

$tags = \Maven::getAllTags($draft_filter_flag = true);

```

In this case, if you'd like to get `en` tag(s), you should call like so.

```
$english_tags = $tags['en'];

```

Model Instance
==============

[](#model-instance)

In order to get model instance of this package, you can use `getModel()`.

```
\Maven::getModel('unique_key');
\Maven::getModel('faq');
\Maven::getModel('tag');

```

Export/Import
=============

[](#exportimport)

You can two commands for export/import.

**\[Export\]**

```
php artisan maven:export

```

- Exported file is located at `storage/app/maven/maven_faqs.json`, `storage/app/maven/maven_tags.json` and `storage/app/maven/maven_unique_keys.json`.

**\[Import\]**

```
php artisan maven:import

```

Contributor
===========

[](#contributor)

[PapaDragonov](https://github.com/PapaDragonov)

License
=======

[](#license)

This package is licensed under the MIT License.
Copyright 2016 Sukohi Kuhoh

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 95.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~30 days

Total

16

Last Release

3385d ago

Major Versions

1.0.x-dev → 2.0.02016-07-06

2.0.3 → 3.0.02016-09-23

2.0.x-dev → 3.0.32016-10-03

3.0.x-dev → 4.0.02017-01-31

### Community

Maintainers

![](https://www.gravatar.com/avatar/2980d59b309d45df3f2e6e51b1d336614da063240b8f76f873f287cd745ec5db?d=identicon)[Sukohi](/maintainers/Sukohi)

---

Top Contributors

[![SUKOHI](https://avatars.githubusercontent.com/u/5362394?v=4)](https://github.com/SUKOHI "SUKOHI (22 commits)")[![PapaDragonov](https://avatars.githubusercontent.com/u/17141028?v=4)](https://github.com/PapaDragonov "PapaDragonov (1 commits)")

### Embed Badge

![Health badge](/badges/sukohi-maven/health.svg)

```
[![Health](https://phpackages.com/badges/sukohi-maven/health.svg)](https://phpackages.com/packages/sukohi-maven)
```

###  Alternatives

[anourvalar/eloquent-serialize

Laravel Query Builder (Eloquent) serialization

11320.2M21](/packages/anourvalar-eloquent-serialize)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135192.6k5](/packages/statamic-rad-pack-runway)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
