PHPackages                             azmanabdlh/gargantua - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. azmanabdlh/gargantua

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

azmanabdlh/gargantua
====================

Minimalist form wizard library.

1.0.0(1y ago)05[1 PRs](https://github.com/azmanabdlh/Gargantua/pulls)MITPHPPHP ^8.1

Since Jul 22Pushed 1y ago1 watchersCompare

[ Source](https://github.com/azmanabdlh/Gargantua)[ Packagist](https://packagist.org/packages/azmanabdlh/gargantua)[ RSS](/packages/azmanabdlh-gargantua/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (1)Dependencies (3)Versions (7)Used By (0)

Gargantua 🪐
-----------

[](#gargantua-)

Form wizard can be challenging and may require a higher effort to complete them. Gargantua is a minimalist form wizard library.

[![demo](/demo.gif)](/demo.gif)

#### Table of Content

[](#table-of-content)

- [Installation](#installation)
    - [Quick Start](#quick-start)
- [API](#api)
    - [Form](#form)
    - [Page](#page)
    - [PageUtils](#pageutils)
    - [Cable](#cable)
- [License](#license)

Installation
------------

[](#installation)

Before you install, it is important to check that your PHP version at least `PHP 7.1+`.

```
composer require azmanabdlh/gargantua
```

### Quick Start

[](#quick-start)

Read the **[example test](https://github.com/mondediefr/docker-flarum)** to get started.

API
---

[](#api)

### Form

[](#form)

```
use Gargantua\Contract\Session;
use Gargantua\Contract\Page;
use Gargantua\Contract\Request;

public static function provide(
  Page[] $page,
  Session $session,
): Form
```

```
// get current page utils.
public function page(): PageUtils
```

```
// check form page can be navigate back.
public function canBack(): bool
```

```
// check form page is last.
public function last(): bool
```

### Page

[](#page)

Page provide a form page

```
// provide form page name.
public function pageName(): string
```

```
// when form page submitted try to invoke func.
public function onSubmit(Request $request): void
```

```
// try to move the next page can invoke func.
public function onNext(array $payload): void
```

```
// when it reaches the tail, each form page invoke func.
public function onCompleted(): void
```

```
use Gargantua\Contract\CanNavigateBack;

// try back to the prev page can invoke func.
public function onNavigateBack(): void
```

### PageUtils

[](#pageutils)

PageUtils provide Page utilities

```
// validate page is active.
public function is(string $pageName): bool
```

```
// get page label.
public function label(): string
```

```
// get page icon.
public function icon(): string

// example
public function icon(): string {
  return ""; // or
}
```

```
// get current page number.
public function number(): int
```

### Cable

[](#cable)

Intercept form page using Cable for each Page submitted.

```
$form->capture([
  new VerifyJwtToken()
]);

// handle logic.
function handle(Request $request): void
```

License
-------

[](#license)

Licensed under [MIT](http://www.opensource.org/licenses/mit-license.php). Totally free for private or commercial projects, or any other uses.

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance31

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

712d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/71063565?v=4)[Azman](/maintainers/azmanabdlh)[@azmanabdlh](https://github.com/azmanabdlh)

---

Top Contributors

[![azmanabdlh](https://avatars.githubusercontent.com/u/71063565?v=4)](https://github.com/azmanabdlh "azmanabdlh (11 commits)")

---

Tags

formform-wizardhtmlmulti-form-stepphpphp-8php8libraryform-wizard

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/azmanabdlh-gargantua/health.svg)

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

###  Alternatives

[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M387](/packages/easycorp-easyadmin-bundle)[illuminate/session

The Illuminate Session package.

9939.3M850](/packages/illuminate-session)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[symfony/ux-autocomplete

JavaScript Autocomplete functionality for Symfony

645.9M39](/packages/symfony-ux-autocomplete)[illuminate/cookie

The Illuminate Cookie package.

244.6M137](/packages/illuminate-cookie)[codefog/contao-news_categories

News Categories bundle for Contao Open Source CMS

3189.0k6](/packages/codefog-contao-news-categories)

PHPackages © 2026

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