PHPackages                             arispati/src-macro - 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. arispati/src-macro

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

arispati/src-macro
==================

Kumpulan Macro untuk SRC

v0.1.3(6y ago)115.5k↓50%1MITPHPPHP &gt;=7

Since Mar 5Pushed 6y ago1 watchersCompare

[ Source](https://github.com/arispati/src-macro)[ Packagist](https://packagist.org/packages/arispati/src-macro)[ RSS](/packages/arispati-src-macro/feed)WikiDiscussions master Synced 1mo ago

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

SRC Macro
=========

[](#src-macro)

**SRC Macro** merupakan package yang didalamnya terdapat kumpulan Macro untuk Laravel dan Lumen.

### Cara Install

[](#cara-install)

- `composer require arispati/src-macro`

#### Laravel

[](#laravel)

- Otomatis terdaftar oleh `Laravel Package Discovery`

#### Lumen

[](#lumen)

- Daftarkan service provider di `bootstrap/app.php````
     $app->register(Arispati\SrcMacro\ServiceProvider::class);
    ```

### Macro yang tersedia

[](#macro-yang-tersedia)

- **Database - Query Builder**
    - [onSearch](#dqbOnSearch)
    - [onSort](#dqbOnSort)
    - [onFilter](#dqbOnFilter)
    - [onBetWeen](#dqbOnBetween)
- **Response**
    - [downloadExcel](#rspDownloadExcel)

### Cara Penggunaan

[](#cara-penggunaan)

-  **onSearch**

    Pencarian berdasarkan kolom yang sudah ditetapkan

    ```
     onSearch(
     	array $columns = [],
     	// default query param dari front-end
     	string $searchParam = 'search'
     )
    ```

    contoh:

    ```
    $query = DB::table('namaTabel')->onSearch([
    	'namaTabel.id', 'nama'
    ])
    ```
-  **onSort**

    Order hasil query berdasarkan kolom yang sudah ditetapkan

    ```
     onSort(
     	array $columns = [],
     	// default query param dari front-end
     	string $sortParam = 'sort',
     	string $sortTypeParam = 'sort_type'
     )
    ```

    contoh:

    ```
    $query = DB::table('namaTabel')->onSort([
    	'id',
    	// dari query param => kolom pada query
    	'nama' => 'namaTabel.nama'
    ])
    ```
-  **onFilter**

    Filter query berdasarkan kolom dan value

    ```
     onFilter(array $columns) // kolom harus ditetapkan
    ```

    contoh:

    ```
    $query = DB::table('namaTabel')->onFilter([
    	'id',
    	// dari query param => kolom pada query
    	'nama' => 'namaTabel.nama'
    ])
    ```
-  **onBetween**

    Filter hasil berdasarkan dua tanggal yang ditetapkan

    ```
     onBetween(
     	string $column = 'created_at',
     	// default query param dari front-end
     	string $startDateParam = 'start_date',
     	string $endDateParam = 'end_date'
     )
    ```

    contoh:

    ```
    // jika parameter sesuai default
    $query = DB::table('namaTabel')->onBetween()
    ```
-  **downloadExcel**

    Download dan hapus file excel hasil export (response: blob data)

    ```
     downloadExcel(
     	// $class harus menggunakan trait Maatwebsite\Excel\Concerns\Exportable
     	object $class,
     	// nama file termasuk ekstensinya
     	string $namaFile
     )
    ```

    contoh:

    ```
    return response()->downloadExcel(new DataToExport(), 'namaFile.xls');
    ```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

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 ~2 days

Total

4

Last Release

2259d ago

### Community

Maintainers

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

---

Tags

arispatisrc-macro

###  Code Quality

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/arispati-src-macro/health.svg)

```
[![Health](https://phpackages.com/badges/arispati-src-macro/health.svg)](https://phpackages.com/packages/arispati-src-macro)
```

PHPackages © 2026

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