PHPackages                             augustpermana/hypervel-meta-generator - 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. augustpermana/hypervel-meta-generator

ActiveHypervel-package[Utility &amp; Helpers](/categories/utility)

augustpermana/hypervel-meta-generator
=====================================

A Hypervel package to generate and manage metadata for models

v1.0.0(6mo ago)02MITPHPPHP &gt;=8.2

Since Oct 22Pushed 6mo agoCompare

[ Source](https://github.com/agus-gian/hypervel-meta-generator)[ Packagist](https://packagist.org/packages/augustpermana/hypervel-meta-generator)[ Docs](https://github.com/agus-gian/hypervel-meta-generator)[ RSS](/packages/augustpermana-hypervel-meta-generator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

Hypervel Meta Generator
=======================

[](#hypervel-meta-generator)

Hypervel Meta Generator adalah package powerful yang memungkinkan Anda dengan mudah melampirkan dan mengelola metadata untuk model Eloquent Anda tanpa memodifikasi tabel database utama mereka. Package ini menyediakan sistem key-value yang fleksibel dengan fitur deteksi tipe otomatis, casting, dan perintah artisan yang berguna untuk menyederhanakan instalasi dan maintenance.

> **🚀 Dibangun untuk Hypervel Framework** - Framework PHP high-performance dengan dukungan coroutine native berbasis Swoole.

---

Daftar Isi
----------

[](#daftar-isi)

- [Fitur](#fitur)
- [Instalasi](#instalasi)
- [Penggunaan](#penggunaan)
    - [Melampirkan Metadata ke Model](#melampirkan-metadata-ke-model)
    - [Mengelola Metadata](#mengelola-metadata)
- [Artisan Commands](#artisan-commands)
    - [`make:metadata`](#makemetadata)
    - [`metadata:clean-orphaned`](#metadataclean-orphaned)
- [Konfigurasi](#konfigurasi)
- [Perbedaan dengan Laravel Version](#perbedaan-dengan-laravel-version)
- [License](#license)

---

Fitur
-----

[](#fitur)

✨ **Auto Type Detection** - Deteksi tipe data otomatis (string, integer, boolean, json, datetime, dll) ✨ **Type Casting** - Casting otomatis saat retrieve data ✨ **Query Scopes** - Query builder scopes untuk filter berdasarkan metadata ✨ **Artisan Commands** - Generate metadata system dan clean orphaned records ✨ **Coroutine Safe** - Dioptimasi untuk environment Swoole/Hypervel dengan coroutine support ✨ **Zero Table Modification** - Tidak perlu mengubah tabel database utama

---

Instalasi
---------

[](#instalasi)

Ada dua cara untuk mengintegrasikan Hypervel Meta Generator ke dalam project Anda:

### 1. Via Packagist (Coming Soon)

[](#1-via-packagist-coming-soon)

```
composer require augustpermana/hypervel-meta-generator
```

Hypervel akan secara otomatis menemukan service provider melalui package discovery.

### 2. Menggunakan Local Repository

[](#2-menggunakan-local-repository)

Jika package belum dipublish di Packagist, tambahkan sebagai local repository. Modifikasi `composer.json` project Anda:

```
"repositories": [
    {
        "type": "path",
        "url": "./vendor/augustpermana/hypervel-meta-generator"
    }
],
"require": {
    "augustpermana/hypervel-meta-generator": "@dev"
}
```

Kemudian jalankan:

```
composer update augustpermana/hypervel-meta-generator
```

---

Penggunaan
----------

[](#penggunaan)

Hypervel Meta Generator memungkinkan Anda melampirkan metadata ke model tanpa memodifikasi tabel database asli.

### Melampirkan Metadata ke Model

[](#melampirkan-metadata-ke-model)

1. **Generate Metadata Files:**

    Jalankan artisan command untuk setup metadata system untuk model yang ada. Contoh untuk model `Product`:

    ```
    php artisan make:metadata --model=Product
    ```

    Saat Anda menjalankan command ini, akan melakukan:

    - **Membuat Meta Model File:** Generate file baru (contoh: `ProductMeta.php`) di direktori `app/Models`
    - **Membuat Migration:** Generate migration untuk membuat tabel metadata (contoh: `product_meta`)
2. **Update Model Asli:**

    Anda harus secara manual update model asli (contoh: `Product.php`) untuk menyertakan trait `HasMetadata`:

    ```
