PHPackages                             redooor/redminportal - 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. redooor/redminportal

ActiveLibrary

redooor/redminportal
====================

RedminPortal is a backend administrating tool for Content Management and Ecommerce sites.

v0.58.0(2y ago)4359717[14 issues](https://github.com/redooor/redminportal/issues)MITPHPPHP &gt;=7.1.3

Since Aug 19Pushed 1w ago8 watchersCompare

[ Source](https://github.com/redooor/redminportal)[ Packagist](https://packagist.org/packages/redooor/redminportal)[ RSS](/packages/redooor-redminportal/feed)WikiDiscussions master Synced today

READMEChangelog (10)Dependencies (14)Versions (24)Used By (0)

[![alt text](https://camo.githubusercontent.com/23e36973b65fe269e58e0d863999c2ca5049c42ae754a00233ae9a0303d78008/68747470733a2f2f7265646f6f6f722e636f6d2f77702d636f6e74656e742f75706c6f6164732f323032302f30372f7265646d696e706f7274616c5f7265646f6f6f722e6a7067 "RedminPortal")](https://camo.githubusercontent.com/23e36973b65fe269e58e0d863999c2ca5049c42ae754a00233ae9a0303d78008/68747470733a2f2f7265646f6f6f722e636f6d2f77702d636f6e74656e742f75706c6f6164732f323032302f30372f7265646d696e706f7274616c5f7265646f6f6f722e6a7067)

RedminPortal by Redooor
=======================

[](#redminportal-by-redooor)

A Laravel 5 package as a **backend** administrating tool for Content Management and Ecommerce sites. Gives you ability to add, edit and remove category, product, promotions and many more. Provides User Interface for administrating users and groups.

RedminPortal currently supports Laravel 5.8. See [Compatibility](#compatibility).

Table of Content
================

[](#table-of-content)

1. [Compatibility](#compatibility)
2. [Models and Features](#models-and-features)
3. [Installation guide for Users](#installation-guide-for-users)
4. [Installation guide for Contributors](#installation-guide-for-contributors)
5. [Testing](#testing)
6. [Versioning](#versioning)
7. [Contributing](#contributing)
8. [Creator](#creator)
9. [License](#license)
10. [External Libraries Used](#external-libraries-used)
11. [Change log](#change-log)
12. [Upgrade Guide](#upgrade-guide)

\#Compatibility

LaravelRedminPortalBranchStatus5.80.58.x[v0.58](https://github.com/redooor/redminportal/tree/v0.58)Active5.10.3.x[v0.3](https://github.com/redooor/redminportal/tree/v0.3)Inactive5.00.2.x[v0.2](https://github.com/redooor/redminportal/tree/v0.2)Inactive4.20.1.x[v0.1](https://github.com/redooor/redminportal/tree/v0.1)InactiveThe focus of the development will be on branch 0.58, which supports the Laravel version 5.8.

Development for branch v0.1, 0.2, 0.3 and 0.4 has stopped. Please upgrade to later versions.

Important note
==============

[](#important-note)

Version &gt;=0.3.2 and &gt;=0.2.2 **may break** your front-end due to the change in UserPricelist. Refer to [UPGRADE.md](UPGRADE.md) for the upgrading instructions.

Version 0.58 is backward compatible to Version 0.3.

Version 0.3 is backward compatible to Version 0.2.

Version 0.3 and 0.2 are **SOMEWHAT** backward compatible to Version 0.1. Refer to [UPGRADE.md](UPGRADE.md).

**Upgrading from v0.1?**

We've included a few database migrations to upgrade the database to support v0.2/v0.3/v0.58. However, use this at your own risk. The upgrade scripts were not thoroughly tested and it may not be complete. If you find something missing, please report to us using the issue ticket. We welcome any contribution too.

Refer to [UPGRADE.md](UPGRADE.md) for the upgrading instructions.

Models and Features
===================

[](#models-and-features)

User Management
---------------

[](#user-management)

- User
- Group
- Mailinglist

Content Management
------------------

[](#content-management)

- Announcement
- Page
- Portfolio
- Post
- Promotion

Online Store (Physical Products)
--------------------------------

[](#online-store-physical-products)

- Bundle
- Category
- Coupon
- Order
- Product (now supports variations)

Membership Subscription (Digital Products)
------------------------------------------

[](#membership-subscription-digital-products)

- Bundle
- Category
- Coupon
- Media
- Membership
- Module
- ModuleMediaMembership
- Order
- Purchase ***(deprecated, replaced by Order)***
- Pricelist

Morphs
------

[](#morphs)

- Image
- Revision (new! Now changes to Orders are tracked)
- Tag
- Translation

Traits
------

[](#traits)

- Permissible
- Revisionable

Classes
-------

[](#classes)

- File
- Volume
- Weight
- Imagine
- Redminportal (use as alias in blade template)

Helpers
-------

[](#helpers)

- RHelper
- RImage ***(replaced by Classes/Imagine, retained for backward compatibility)***

Facades
-------

[](#facades)

- Redminportal

Downloadable Reports
--------------------

[](#downloadable-reports)

1. Downloadable CSV reports for Purchases and Mailinglist.

Translation options
-------------------

[](#translation-options)

There is an translation option in Category, Module, Media, Product, Promotion and Portfolio.

You can add more languages in the translation config file at path

```
vendor\redooor\redminportal\src\config\translation.php

```

or if you have published it to your root

```
root\config\packages\redooor\redminportal\translation.php

```

To use it, get the model's translations and use json\_decode to convert content into an object, like this:

```
foreach ($product->translations as $translation) {
    $lang = $translation->lang;
    $translated = json_decode($translation->content);
    var_dump($translated->name, $translated->short_description, $translated->long_description);
}

```

Installation guide for Users
============================

[](#installation-guide-for-users)

You can install Laravel version 5.8 using the command:

```
composer create-project laravel/laravel myproject 5.8.*

```

1. Add Redminportal to composer.json of a new Laravel application, under "require". Like this:

    ```
     "require": {
         "laravel/framework": "5.8.*",
         "redooor/redminportal": "0.58.[*|specify a version]"
     },

    ```

    **NOTE:**

    It is advisable to specify the minor version (e.g. 0.58.0) so that it's more controlled. Although we try to be as backward compatible as possible, many changes are added into each version, so it may sometimes break your front end code.
2. Then run `php composer update [--prefer-dist]` in a terminal.

    Use `--prefer-dist` to include only essential files (i.e. exclude tests).
3. Now, edit your \[root\]\\config\\app.php providers and alias array like this:

    ```
     'providers' => array(
         Illuminate\Foundation\Providers\ArtisanServiceProvider::class,
         ... omitted ...

         // Add this line
         Redooor\Redminportal\RedminportalServiceProvider::class,
     ),

    ```
4. Then run `php composer dump-autoload` in a terminal.
5. Run the following commands in a terminal to perform database migration for Redminportal:

    ```
     php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="migrations" [--force]

     php artisan migrate --path=/database/migrations/vendor/redooor/redminportal

    ```

    **CAUTION: using --force will overwrite existing files**
6. Run the following in a terminal to seed the database with initial admin username and password:

    ```
     php artisan db:seed --class="RedminSeeder"

     Username/password: admin@admin.com/admin

    ```
7. Publish package assets by running this in a terminal:

    ```
     php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="public" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**
8. Publish package config by running this in a terminal:

    ```
     php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="config" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**

    IMPORTANT:

    The package will append neccesary guards and providers to your `auth` config. If you've added a guard with the same name as `redminguard` and provider as `redminprovider`, they'll be replaced by the package's setting.

    If you're going to use your own `auth` config but would like to use Redminportal for authentication, you need to add the a guard in your `auth` config as below:

    ```
    'defaults' => [
        'guard' => 'web', // or it could be 'redminguard'
        'passwords' => 'redminpasswords',
    ],

    ```

    ```
    'guards' => [
        'redminguard' => [
            'driver' => 'session',
            'provider' => 'redminprovider',
        ],
        'web' => [
            'driver' => 'session',
            'provider' => 'redminprovider',
        ],
    ],

    ```

    ```
    'providers' => [
        'redminprovider' => [
            'driver' => 'eloquent',
            'model' => Redooor\Redminportal\App\Models\User::class,
        ],
    ],

    ```

    ```
    'passwords' => [
        'redminpasswords' => [
            'provider' => 'redminprovider',
            'email' => 'auth.emails.password',
            'table' => 'password_resets',
            'expire' => 60,
        ],
    ],

    ```
9. ***Optional:*** Publish package views by running this in a terminal:

    Only do this if you want to modify Redminportal views without editing the source code.

    ```
     php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="views" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**

Installation guide for Contributors
===================================

[](#installation-guide-for-contributors)

It is recommended that contributors use Laravel Homestead for development because it will provide the same development environment for all of us. Read more about Laravel Homestead [here](http://laravel.com/docs/master/homestead).

For Mac users, you may want to try out [Laravel Herd](https://herd.laravel.com/).

1. Install Laravel 5.8 using [this guide](http://laravel.com/docs/5.8/installation). We'll call this the \[root\].

You can install Laravel version 5.8 using the command:

```
composer create-project laravel/laravel myproject 5.8.*

```

2. Create a folder named "packages" inside the \[root\] folder.
3. Clone the Redooor\\Redminportal repository into \[root\]\\packages\\redooor\\redminportal folder.
4. Open a terminal, cd to \[root\]\\packages\\redooor\\redminportal folder then run:

    `composer update --prefer-dist -vvv --profile`
5. Then add Redooor\\Redminportal source to \[root\]'s composer.json under "autoload" like this:

    ```
     "autoload": {
         "classmap": [
             "database"
         ],
         "psr-4": {
             "App\\": "app/",
             "Redooor\\Redminportal\\": "packages/redooor/redminportal/src"
         }
     },

    ```
6. Then cd to \[root\]'s folder and run:

    `composer update --prefer-dist -vvv --profile --no-dev`

    **NOTE: the \[root\]'s phpunit dependency will clash with the package's phpunit. "`--no-dev`" ensures that it is not installed on \[root\]. You can also choose to remove phpunit from `require` inside the \[root\]'s composer.json.**
7. Now, edit your \[root\]\\config\\app.php providers and alias array like this:

    ```
     'providers' => array(
         Illuminate\Foundation\Providers\ArtisanServiceProvider::class,
         ... omitted ...

         // Add this line
         Redooor\Redminportal\RedminportalServiceProvider::class,
     ),

    ```
8. Run the following commands in a terminal to perform database migration for Redminportal inside the \[root\] folder:

    ```
     php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="migrations" [--force]

     php artisan migrate --path=/database/migrations/vendor/redooor/redminportal

    ```

    **CAUTION: using --force will overwrite existing files**
9. Run the following in a terminal to seed the database with initial admin username and password:

    ```
     php artisan db:seed --class="RedminSeeder"

     Username/password: admin@admin.com/admin

    ```
10. Publish package assets by running this in a terminal:

    ```
    php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="public" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**
11. Publish package config by running this in a terminal:

    ```
    php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="config" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**
12. ***Optional:*** Publish package views by running this in a terminal:

    Only do this if you want to modify Redminportal views without editing the source code.

    ```
    php artisan vendor:publish --provider="Redooor\Redminportal\RedminportalServiceProvider" --tag="views" [--force]

    ```

    **CAUTION: using --force will overwrite existing files**

Install Grunt and Bower dependencies
------------------------------------

[](#install-grunt-and-bower-dependencies)

1. You need to have nodejs installed
2. cd to packages/redooor/redminportal
3. Run *npm install*
4. Run *bower install*
5. To build all assets, run *grunt*
6. To compile just the less css, run *grunt less-compile*

Testing
=======

[](#testing)

- In packages\\redooor\\redminportal folder, run

    ```
      composer update --prefer-dist -vvv --profile

      vendor/bin/phpunit

    ```

    **NOTE: If you run out of memory while running the full tests, try running the tests by sub-folders.**

    ```
      vendor/bin/phpunit tests/models/

      vendor/bin/phpunit tests/controllers/

      vendor/bin/phpunit tests/relationships/

      ./vendor/bin/phpunit --testsuite "suite1","suite2"

      ./vendor/bin/phpunit --testsuite "suite3","suite4"

    ```

Versioning
==========

[](#versioning)

For transparency into our release cycle and in striving to maintain backward compatibility, Redooor RedminPortal will adhere to the [Semantic Versioning guidelines](http://semver.org/) whenever possible.

Contributing
============

[](#contributing)

Thank you for considering contributing to RedminPortal. Before any submission, please spend some time reading through the [CONTRIBUTING.md](CONTRIBUTING.md) document.

Creator
=======

[](#creator)

Andrews Ang

-

License
=======

[](#license)

RedminPortal is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).

External Libraries Used
=======================

[](#external-libraries-used)

- [Bootstrap v3](http://getbootstrap.com)
- [Font Awesome 4.4.0 by @davegandy](http://fontawesome.io)
- jQuery v2
- jQuery UI v1
- [illuminate/html](https://github.com/illuminate/html)
- [maatwebsite/excel](https://github.com/Maatwebsite/Laravel-Excel)
- [Imagine](https://github.com/avalanche123/Imagine)
- [Jasny Bootstrap](http://jasny.github.io/bootstrap/)
- [Plupload](http://www.plupload.com/)
- [getID3](http://www.getid3.org/)

Change log
==========

[](#change-log)

Refer to [CHANGELOG.md](CHANGELOG.md)

Upgrade Guide
=============

[](#upgrade-guide)

Refer to [UPGRADE.md](UPGRADE.md)

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance58

Moderate activity, may be stable

Popularity27

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98.3% 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 ~168 days

Recently: every ~692 days

Total

21

Last Release

922d ago

PHP version history (4 changes)v0.1.0PHP &gt;=5.3.0

v0.2.0PHP &gt;=5.4.0

v0.3.0PHP &gt;=5.5.9

v0.58.0PHP &gt;=7.1.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/0bb130acdcc5026f298490f6905dc034745421c8e07788749cd92ffa3ba8a5bd?d=identicon)[kongnir](/maintainers/kongnir)

---

Top Contributors

[![kongnir](https://avatars.githubusercontent.com/u/1088896?v=4)](https://github.com/kongnir "kongnir (410 commits)")[![angauto](https://avatars.githubusercontent.com/u/43030204?v=4)](https://github.com/angauto "angauto (5 commits)")[![rodrigoprimo](https://avatars.githubusercontent.com/u/77215?v=4)](https://github.com/rodrigoprimo "rodrigoprimo (1 commits)")[![tusharvikky](https://avatars.githubusercontent.com/u/1810991?v=4)](https://github.com/tusharvikky "tusharvikky (1 commits)")

---

Tags

laravelpackageecommercebackendportalredooorredmin

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/redooor-redminportal/health.svg)

```
[![Health](https://phpackages.com/badges/redooor-redminportal/health.svg)](https://phpackages.com/packages/redooor-redminportal)
```

###  Alternatives

[krayin/laravel-crm

Krayin CRM

22.0k32.8k1](/packages/krayin-laravel-crm)[aimeos/aimeos-laravel

Cloud native, API first Laravel eCommerce package with integrated AI for ultra-fast online shops, marketplaces and complex B2B projects

8.6k214.7k3](/packages/aimeos-aimeos-laravel)[jsdecena/laracom

Laravel powered e-commerce

2.0k4.4k](/packages/jsdecena-laracom)[unopim/unopim

UnoPim Laravel PIM

9.4k1.8k](/packages/unopim-unopim)[ronasit/laravel-helpers

Provided helpers function and some helper class.

1475.7k13](/packages/ronasit-laravel-helpers)

PHPackages © 2026

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