Download the PHP package nathandunn/model-repositories without Composer

On this page you can find all versions of the php package nathandunn/model-repositories. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package model-repositories

Laravel Model Repositories

A lightweight abstraction for Laravel Eloquent models that enables cleaner, more expressive repository-style access to your application's data layer.

"Fetching collections or business-specific queries from models violates separation of concerns. This package provides an elegant way to wrap Eloquent models into repository-like entities."

Inspired by Jack Wagstaffe


๐Ÿš€ Installation

Install via Composer:


๐Ÿ“ฆ What This Provides

This package allows you to:


๐Ÿง  Concept

Instead of injecting Eloquent models directly into services or controllers, create a repository class per model that encapsulates query logic.

For example, instead of:

You can use:


๐Ÿ›  Usage

1. Create a Custom Repository


2. Inject into Your Controller


๐Ÿ” Dynamic Method Chaining

The base Repository class supports auto-chaining based on naming convention. The following helper prefixes are recognised:

Prefix Description
get Fetch a collection
getPaginated Fetch and paginate
getCount Get count of query results
first / firstOrFail Fetch a single item
exists Check for existence

So calling getPaginatedForUser($user) will:

  1. Call forUser($user) (your custom method)
  2. Then call paginate() on the result

This is handled by __call() in the base class using a naming convention-based resolver.


๐Ÿงช Example Call Chain

Given a repository method forUser(User $user): Builder, these dynamic calls become possible:


โœ… Requirements


๐Ÿ“š License

MIT ยฉ Nathan Dunn


All versions of model-repositories with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
illuminate/database Version ^10.0 || ^11.0 || ^12.0
illuminate/support Version ^10.0 || ^11.0 || ^12.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package nathandunn/model-repositories contains the following files

Loading the files please wait ....