PHPackages                             ynsinc/make-ris - 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. ynsinc/make-ris

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

ynsinc/make-ris
===============

Provides Artisan commands to generate Repository, Interface, and Service classes, simplifying the use of the Repository pattern in Laravel.

v11.x-dev(1y ago)487MITPHP

Since Mar 14Pushed 1y ago2 watchersCompare

[ Source](https://github.com/glsarmenta/make-ris)[ Packagist](https://packagist.org/packages/ynsinc/make-ris)[ RSS](/packages/ynsinc-make-ris/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

Laravel Artisan Commands for Repository, Interface, and Service Generation
==========================================================================

[](#laravel-artisan-commands-for-repository-interface-and-service-generation)

This package provides Artisan commands for Laravel applications to generate Repository, Interface, and Service classes for models, making it easier to adhere to the Repository pattern and keep your code organized.

Features
--------

[](#features)

### Repository Command

[](#repository-command)

Command that creates a repository and its corresponding interface based on a model name.

### Service Command

[](#service-command)

Command that creates a service class, optionally linked to a specific controller.

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

[](#installation)

Install the package via Composer:

```
composer require ynsinc/make-ris:dev-main
```

Register the providers in bootstrap/providers.php

```
return [
    ..,
    YnsInc\MakeRIS\MakeRISServiceProvider::class,
];
```

Usage
-----

[](#usage)

### Repository Command

[](#repository-command-1)

This command creates a repository and interface based on a model name.

### Basic Command

[](#basic-command)

```
php artisan make:repository --model=ModelName
```

Optional Flags

Flag/OptionUsageDescription`--model``--model=User`Add a repository and interface based on the model name.`--subdir``--subdir=User`Add a service under a specific directory.`--name``--name=CustomName`Specify a custom name (if needed).### Examples

[](#examples)

**With Model Flag**

```
php artisan make:repository --model=User
```

Outcome:

```
app/
└── Interfaces/
    └── UserInterface.php
└── Repositories/
    └── UserRepository.php
```

**With Subdirectory Flag**

```
php artisan make:repository --model=User --subdir=User

```

Outcome:

```
app/
└── Interfaces/
    └── User/
        └── UserInterface.php
└── Repositories/
    └── User/
        └── UserRepository.php

```

**With Name Flag**

```
php artisan make:repository --name=Custom
```

Outcome:

```
app/
└── Interfaces/
    └── CustomInterface.php
└── Repositories/
    └── CustomRepository.php
```

Service Command This command creates a service class.

Basic Command

```
php artisan make:service
```

Flag/OptionUsageDescription--controller--controller=UserManagementAdd a service based on the controller name.--subdir--subdir=UserAdd a service under a specific directory.--name--name=CustomNameAdd a custom service. (This is a service that is not affiliated to any controller such as Common Services like StripeService, TaxService etc...)Examples
--------

[](#examples-1)

With Controller Flag

```
php artisan make:service --controller=UserManagement
```

Outcome:

```
app/
└── Services/
    └── UserManagementService.php
```

With Subdirectory Flag

```
php artisan make:service --controller=UserManagement --subdir=User
```

Outcome:

```
app/
└── Services/
    └── User/
        └── UserManagementService.php
```

With Name Flag

```
php artisan make:service --name=Tax --subdir=Common
```

Outcome:

```
app/
└── Services/
    └── Common/
        └── TaxService.php
```

Output Repository Command Output Structure:

```
app/
└── Interfaces/
    └── [Subdirectory/]InterfaceName.php
└── Repositories/
    └── [Subdirectory/]RepositoryName.php
```

Service Command Output Structure:

```
app/
└── Services/
    └── [Subdirectory/]ServiceName.php
```

Contributing Feel free to submit issues or pull requests if you find any bugs or have suggestions for improvements.

License
-------

[](#license)

This project is open-sourced software licensed under the MIT license.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance45

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity23

Early-stage or recently created project

 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

431d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/99cf0a0e0a087bee3e74d93cb5b5aa779a14b9987d864882e9acd98d76df2289?d=identicon)[glsarmenta](/maintainers/glsarmenta)

---

Top Contributors

[![glsarmenta](https://avatars.githubusercontent.com/u/2517413?v=4)](https://github.com/glsarmenta "glsarmenta (8 commits)")

### Embed Badge

![Health badge](/badges/ynsinc-make-ris/health.svg)

```
[![Health](https://phpackages.com/badges/ynsinc-make-ris/health.svg)](https://phpackages.com/packages/ynsinc-make-ris)
```

PHPackages © 2026

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