PHPackages                             ekosuprianto96/laravel-visual-migrator - 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. [Database &amp; ORM](/categories/database)
4. /
5. ekosuprianto96/laravel-visual-migrator

ActiveLibrary[Database &amp; ORM](/categories/database)

ekosuprianto96/laravel-visual-migrator
======================================

Visual Schema Designer for Laravel Migrations (powered by Mongo Diagram)

2.6.1(2w ago)4232MITPHPPHP &gt;=8.2CI passing

Since Feb 21Pushed 2w agoCompare

[ Source](https://github.com/ekosuprianto96/laravel-visual-migrator)[ Packagist](https://packagist.org/packages/ekosuprianto96/laravel-visual-migrator)[ RSS](/packages/ekosuprianto96-laravel-visual-migrator/feed)WikiDiscussions main Synced today

READMEChangelog (3)Dependencies (9)Versions (4)Used By (0)

Laravel Visual Migrator
=======================

[](#laravel-visual-migrator)

**Current version: 2.6.1**

[![Latest Version on Packagist](https://camo.githubusercontent.com/db312d573d63a0422078bc4fa7e4401bae3e5273eb3f3c57927142f035f5eaae/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f656b6f7375707269616e746f39362f6c61726176656c2d76697375616c2d6d69677261746f722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ekosuprianto96/laravel-visual-migrator)[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)

**Laravel Visual Migrator** is a powerful visual database schema design tool integrated directly into your Laravel application. Model your tables, fields, and relationships visually and transform them into Laravel migration files instantly.

---

Key Features
------------

[](#key-features)

- 🎨 **Visual Architecture Builder**: Design your database schema using a highly interactive and intuitive diagram interface powered by Vue Flow.
- 🔄 **Bidirectional Synchronization**:
    - **Import**: Automatically scan your `database/migrations` folder and visualize your existing tables.
    - **Export**: Generate clean, PSR-compliant Laravel migration PHP files from your visual design.
- 🛡️ **Draft &amp; Persistence System**: Added tables (Drafts) are preserved in your browser's local storage until you officially save them to migrations, preventing work loss on refresh.
- � **Layout Stability**: Smart merging logic ensures that your custom node positions are preserved even after backend synchronization.
- ⚡ **Real-time Change Detection**: Automatically detects when migration files are modified on the server and notifies you to sync.
- � **Table Selection**: Choose specifically which tables you want to export or sync, giving you granular control over your codebase.

Efficiency &amp; Performance
----------------------------

[](#efficiency--performance)

- **Optimized Network Traffic**: Uses debounced requests for layout saving and throttled polling for change detection.
- **Tab Visibility Awareness**: Polling automatically pauses when the browser tab is inactive to save system resources.
- **Lightweight Metadata**: Relationship and layout data are stored efficiently in a single JSON file within your migrations folder.

---

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

[](#installation)

Install the package via composer:

```
composer require ekosuprianto96/laravel-visual-migrator
```

Publish and setup the package automatically:

```
php artisan visual-migrator:install
```

This command will publish assets, configuration, and offers to run the database migrations for you.

Important

If you choose not to run migrations during installation, make sure to run them manually afterwards:

```
php artisan migrate
```

### How to Access

[](#how-to-access)

After installation, the Visual Migrator dashboard is available at:

```
http://your-app.test/visual-migrator

```

Note

By default, the dashboard is **only accessible in the `local` environment**. You can change the URL path and middleware in the `config/visual-migrator.php` file.

### Useful Commands

[](#useful-commands)

#### Reset Metadata

[](#reset-metadata)

If you need to reset all visual layout data (node positions), you can use the refresh command:

```
php artisan visual-migrator:refresh
```

#### Cleanup Orphaned Data

[](#cleanup-orphaned-data)

If you delete migration files manually, you can clean up the orphaned visual metadata from the database:

```
php artisan visual-migrator:cleanup
```

Testing
-------

[](#testing)

Run the unit tests using PHPUnit:

```
cd packages/laravel
composer install
./vendor/bin/phpunit
```

Configuration
-------------

[](#configuration)

The configuration file is located at `config/visual-migrator.php`. You can customize the following options:

```
return [
    /**
     * The URL path where the visual migrator dashboard will be accessible.
     * Default: 'visual-migrator'
     */
    'path' => 'visual-migrator',

    /**
     * The middleware applied to the visual migrator routes.
     * Usually 'web' is sufficient for local development.
     */
    'middleware' => ['web'],

    /**
     * List of migration tables to be ignored by the visual migrator.
     * These tables will not be parsed or displayed in the diagram dashboard.
     * Perfect for hiding Laravel system/boilerplate tables.
     */
    'ignore_migrations' => [
        'users', 'password_reset_tokens', 'failed_jobs',
        'personal_access_tokens', 'cache', 'jobs',
        'job_batches', 'sessions',
    ],
];
```

Important

For security reasons, the dashboard is **only accessible in the `local` environment** by default.

---

Why Use Laravel Visual Migrator?
--------------------------------

[](#why-use-laravel-visual-migrator)

1. **Speed up Prototyping**: Stop writing migrations by hand. Drag, drop, and click to build your core architecture in minutes.
2. **Visual Documentation**: Your diagram *is* your living documentation. New team members can understand the database structure at a glance.
3. **Reduced Human Error**: Ensure foreign keys and data types are consistent across tables without worrying about syntax errors.
4. **Non-Destructive**: It works alongside your existing migrations. You can selectively sync only what you need.

Future Roadmap
--------------

[](#future-roadmap)

- **Visual Seeders**: Generate factory and seeder data directly from the diagram.
- **Export to Laravel Blueprint**: Support for the popular Laravel Blueprint syntax.
- **Collaborative Mode**: Real-time collaborative design for teams.
- **Reverse Engineering Support**: Advanced parsing for complex raw SQL dumps.

---

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Eko Suprianto](https://github.com/ekosuprianto96)
- [All Contributors](https://github.com/ekosuprianto96/laravel-visual-migrator/graphs/contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance96

Actively maintained with recent releases

Popularity14

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 93.8% 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 ~57 days

Total

3

Last Release

18d ago

PHP version history (2 changes)2.5.0PHP &gt;=8.1

2.6.1PHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/da3b91fef15dfa69bd43f5b58bd1ee41cda542640c7fd2d9228e034378597cc6?d=identicon)[ekosuprianto96](/maintainers/ekosuprianto96)

---

Top Contributors

[![ekosuprianto96](https://avatars.githubusercontent.com/u/99206463?v=4)](https://github.com/ekosuprianto96 "ekosuprianto96 (15 commits)")[![rizkyyangpalsu](https://avatars.githubusercontent.com/u/25103643?v=4)](https://github.com/rizkyyangpalsu "rizkyyangpalsu (1 commits)")

---

Tags

database-designlaravellaravel-packagemigrationsmigrations-generatorphpschemavisual-migrator

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ekosuprianto96-laravel-visual-migrator/health.svg)

```
[![Health](https://phpackages.com/badges/ekosuprianto96-laravel-visual-migrator/health.svg)](https://phpackages.com/packages/ekosuprianto96-laravel-visual-migrator)
```

###  Alternatives

[illuminate/database

The Illuminate Database package.

2.8k54.9M11.7k](/packages/illuminate-database)[yajra/laravel-oci8

Oracle DB driver for Laravel via OCI8

8793.2M25](/packages/yajra-laravel-oci8)[glushkovds/phpclickhouse-laravel

Adapter of the most popular library https://github.com/smi2/phpClickHouse to Laravel

2051.5M2](/packages/glushkovds-phpclickhouse-laravel)[lemaur/eloquent-publishing

218.1k1](/packages/lemaur-eloquent-publishing)[laravel-liberu/laravel-gedcom

A package that converts gedcom files to Eloquent models

782.5k1](/packages/laravel-liberu-laravel-gedcom)

PHPackages © 2026

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