PHPackages                             takshak/adash-shop - 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. [Admin Panels](/categories/admin)
4. /
5. takshak/adash-shop

ActiveLibrary[Admin Panels](/categories/admin)

takshak/adash-shop
==================

shop extension for adash admin panel

2.4.17(4mo ago)050MITPHP

Since Mar 10Pushed 4mo ago1 watchersCompare

[ Source](https://github.com/takshaktiwari/ashop)[ Packagist](https://packagist.org/packages/takshak/adash-shop)[ RSS](/packages/takshak-adash-shop/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (6)Versions (27)Used By (0)

Introduction
============

[](#introduction)

This package is a part of **Adash** ecosystem. It is a shop implementation for Adash admin panel. It provides a simple and easy way to manage products, orders, customers and other related entities. It also comes with few inbuilt components that can be used to create a simple shop website.

Installation
============

[](#installation)

```
composer require takshak/adash-shop

php artisan migrate

php artisan ashop:seed

```

Add argument 'fresh' (`php artisan ashop:seed fresh`) if you are seeding the first time. It will publish the seeders first and then see the database

Add `AshopUserTrait` to User model:

```
use Takshak\Ashop\Traits\AshopUserTrait;

class User extends Authenticatable implements MustVerifyEmail
{
    use AshopUserTrait;

    ...
}

```

Publish assets `php artisan vendor:publish --tag=ashop-assets`

Add components to admin sidebar for admin links `ashop-ashop:admin-sidebar-links`

Publish config file `php artisan vendor:publish --tag=ashop-config`

Configure `takshak/adash-metas` package (for more details goto \[\] which is already included with this package, follow these given steps if not already done:

- Add meta tag component for sidebar menu (if not already added) `ametas-ametas:admin-sidebar-links`.
- Add this section to *head* tab of you master layout (app.blade.php)

    ```
      @section('metatags')

      @show

    ```

Publishable Files
=================

[](#publishable-files)

```
php artisan vendor:publish --tag=ashop-config
php artisan vendor:publish --tag=ashop-views
php artisan vendor:publish --tag=ashop-assets
php artisan vendor:publish --tag=ashop-seeders

```

In-built components
===================

[](#in-built-components)

- **ashop-ashop:admin-sidebar-links**

    This component is designed to render a specific view that contains the admin sidebar links.
- **ashop-ashop:inner-nav**

    This component create a inner (in page) navigation in admin panel. This accepts 2 arguments:

    1. title (string) : display the title or the name of the navigation
    2. links (array) : this will construct the navigation links. It contains *permission* (to check the permission), *text* (displayed text of nav item) and *url* (actual url of navigation).

        For Example

        ```
            :links="[
                [
                    'permission' => 'products_details',
                    'text' => 'Product Detail',
                    'url' => 'route('admin.product.details')'
                ],
                [
                    'permission' => 'products_images',
                    'text' => 'Product Images',
                    'url' => 'route('admin.product.images')'
                ]
            ]"

        ```
- **ashop-ashop:product-nav**

    This component is made on the top of `ashop-ashop:inner-nav` where you need to pass the product's modal instance and this will create the product inner navigation for you. eg.

    ```

    ```
- **ashop-ashop:product-card**

    This component will create a card layout of the product for displaying, it accepts only one argument *product*.

    ```

    ```
- **ashop-ashop:product-list-item**

    This component is similar to *ashop-ashop:product-card*, it display the product item as a list item
- **ashop-ashop:shop-sidebar**

    This will create a sidebar on products listing page at the front end to show the categories and filter options like color, size, pattern etc. in sidebar to let user filter the products. It can accept 2 arguments:

    1. category (optional): you can pass a category model to make that category as active category in the sidebar and all the filterable options / attributes will be shown in the sidebar which are associated to this category only if *filterAttributes* argument is not passed saperately.

        If there is any category in query parameter (in current url), it will take that category as primary category.
    2. filterAttributes (array: optional): If you already got the filterable attributes you can pass here which will save a couple of queries
- **ashop-ashop:shop-header**

    This will have a header on product listing page which will contain search with categories, ordering and listing layout.
- **ashop-ashop:products-group**

    This will show a group of product in any section of the page, where you want to show latest, oldest, products of any category etc. You will have multiple options which might be changed according to out requirement that which products we need to show.

    1. title (string: optional): Show the title / heading for the group
    2. subtitle (string: optional): Show the subtitle in smaller font
    3. heading (string|html: optional): If we want show some other content in the header
    4. buttons (array: optional): show some buttons / links in the heading like: show more or any other button. For Example.

        ```
        :buttons="[
            [
                'text' => 'See More',
                'url' => route('shop.products', ['order_by' => 'latest'])
            ]
        ]"

        ```
    5. type (string: optional): you will pass *featured* in this argument which will get you only featured products.
    6. order (string: optional): we can set the order of the product listing, we can pass *latest, oldest* or *rand*. *(default: 'latest')*
    7. ids (array: optional): if we want to list a group of some specific products, we will pass the array or products IDs, so that this will only show those products.
    8. categories (array: optional): if we want to show the products from some specific categories, we will pass the list categories in an array. This array can contain categories *id, name* or *slug*.
    9. products (collection: options): if we got the collection of products we can pass here the products and it will list those product. This will not apply other arguments like, type, categories, ids etc.
    10. limit (number: optional): this will limit the products listing *(default: 10)*
    11. container (bool: options): if we want to render this section in a container or not. *(default: true)*
    12. columns (string: optional): to decide how many columns will be rendered in this section, it will accept bootstrap column classes. *(default: 'row-cols-2 row-cols-md-3 row-cols-lg-4 row-cols-xl-5')*
- **ashop-ashop:categories-group**

    This will show the list of categories in a section. we might use this to show latest categories, popular categories, featured categories etc. you can customize this components with these parameters:

    1. title (string: optional): Show the title / heading for the group
    2. subtitle (string: optional): Show the subtitle in smaller font
    3. buttons (array: optional): show some buttons / links in the heading like: show more or any other button. For Example.

        ```
        :buttons="[
            [
                'text' => 'See More',
                'url' => route('shop.products', ['order_by' => 'latest'])
            ]
        ]"

        ```
    4. parent (bool: optional): this will allow you to show only parent categories. *(default: true)*
    5. type (string: optional): you will pass *featured* or *is\_top* in this.
    6. order (string: optional): we can set the order of the items listing, we can pass *latest, oldest* or *rand*. \_(default: 'latest')
    7. ids (array: optional): if we want to list a group of some specific items, we will pass the array or categories IDs.
    8. category\_id (int: options): this will be useful when you want to show the child categories of any specific category when *parent* argument is set to *false*
    9. limit (number: optional): this will limit the items listing *(default: 10)*
    10. columns (string: optional): to decide how many columns will be rendered in this section, it will accept bootstrap column classes. *(default: 'row-cols-2 row-cols-md-3 row-cols-lg-4 row-cols-xl-5')*
- **ashop-ashop:brands-group**

    This component will be useful when we want to so the list to brands in a section. this will also contains the arguments similar to **ashop-ashop:categories-group** component.

    1. title (string: optional)
    2. subtitle (string: optional)
    3. buttons (string: optional)
    4. order (string: optional) (default: latest)
    5. ids (array: optional): will accept array of brands IDs
    6. categories (array: optional): we will pass the list categories in an array. This array can contain categories *id, name* or *slug*
    7. limit (int: options) (default: 10)
    8. columns (string: optional) (default: 'row-cols-2 row-cols-sm-3 row-cols-md-4 row-cols-lg-5 row-cols-xl-6')
- **ashop-ashop:user-account**

    This will render the user dashboard layout with sidebar menu. We can pass the page title in title argument. This is not suppose to be a self closing component so you can pass the inner page content inside this. For example:

    ```

          {{-- orders page html content --}}

    ```
- **ashop-ashop:user-bottom-nav**

    This will render main user pages navigation with icons.
- **ashop-ashop:products-viewed-history**

    This will show a section to show already viewed products list. this can contains some augments for tweaking.

    1. title (string: optional)
    2. subtitle (string: optional)
    3. limit (int: options) (default: 25)
- **ashop-ashop:mail-layout**This can be used when creating a emil to send to users.

In-built commands
=================

[](#in-built-commands)

- **ashop:clear-junk-orders** : Clear those orders which is not successfully placed or not valid
- **ashop:clear-products-deal-price** : Clear products deal price if deal is expired
- **ashop:product-attach-parent-categories** : Attach the parent categories to a subcategory which is attached to the product.
- **ashop:products-search-tags-optimize** : Prepare search tags and save in products table for optimized search
- **ashop:products-viewed-delete {--keep=50}** : delete products viewed history after keeping some of them
- **ashop:feed-product-reviews {--min=2} {--max=15} {--min-rating=4} {--max-rating=5}** : feed some reviews to look the shop more trusted

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance78

Regular maintenance activity

Popularity8

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.4% 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 ~12 days

Total

26

Last Release

120d ago

Major Versions

1.x-dev → 2.0.12025-03-10

### Community

Maintainers

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

---

Top Contributors

[![takshaktiwari](https://avatars.githubusercontent.com/u/58802422?v=4)](https://github.com/takshaktiwari "takshaktiwari (62 commits)")[![ve-takshak](https://avatars.githubusercontent.com/u/197577695?v=4)](https://github.com/ve-takshak "ve-takshak (3 commits)")

---

Tags

laravelshopadminadash

### Embed Badge

![Health badge](/badges/takshak-adash-shop/health.svg)

```
[![Health](https://phpackages.com/badges/takshak-adash-shop/health.svg)](https://phpackages.com/packages/takshak-adash-shop)
```

###  Alternatives

[slowlyo/owl-admin

基于 laravel、amis 开发的后台框架~

61214.2k26](/packages/slowlyo-owl-admin)

PHPackages © 2026

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