PHPackages                             misaf/vendra - 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. [Framework](/categories/framework)
4. /
5. misaf/vendra

ActiveProject[Framework](/categories/framework)

misaf/vendra
============

The skeleton application for the Vendra framework.

v1.10.0(2w ago)11MITPHPPHP ^8.3CI passing

Since Jul 10Pushed 2w agoCompare

[ Source](https://github.com/misaf/vendra)[ Packagist](https://packagist.org/packages/misaf/vendra)[ RSS](/packages/misaf-vendra/feed)WikiDiscussions 1.x Synced 1w ago

READMEChangelog (10)Dependencies (258)Versions (26)Used By (0)

Vendra
======

[](#vendra)

Vendra is a modular Laravel 13 application for commerce, content, customer management, and multi-tenant platform development. This repository contains the host application and every first-party Vendra package in one Composer monorepo.

Requirements
------------

[](#requirements)

- PHP 8.3+
- Laravel 13
- Composer
- Node.js and npm
- MySQL or another Laravel-supported database

Local Development
-----------------

[](#local-development)

```
composer setup
composer dev
```

`composer setup` installs PHP and JavaScript dependencies, creates `.env`, generates the application key, runs migrations, and builds frontend multimedia. `composer dev` starts the web server, queue listener, logs, and Vite in watch mode.

Package Catalog
---------------

[](#package-catalog)

Packages are independently installable through Composer and are auto-discovered by Laravel unless their README says otherwise.

AreaPackagesFoundation[Support](packages/vendra-support), [API](packages/vendra-api), [Tenant](packages/vendra-tenant), [Testing](packages/vendra-testing)Standalone dependencies[Email Validation](https://github.com/misaf/laravel-email-validation), [Emailable Driver](https://github.com/misaf/laravel-email-validation-emailable)Catalog and sales[Product](packages/vendra-product), [Attribute](packages/vendra-attribute), [Currency](packages/vendra-currency), [Cart](packages/vendra-cart), [Transaction](packages/vendra-transaction), [Subscription](packages/vendra-subscription)Content and marketing[Blog](packages/vendra-blog), [Custom Page](packages/vendra-custom-page), [FAQ](packages/vendra-faq), [Multimedia](packages/vendra-multimedia), [Tagger](packages/vendra-tagger), [Newsletter](packages/vendra-newsletter), [Affiliate](packages/vendra-affiliate)Customers and access[User](packages/vendra-user), [User Profile](packages/vendra-user-profile), [Address](packages/vendra-address), [Phone](packages/vendra-phone), [Document](packages/vendra-document), [Verification](packages/vendra-verification), [Permission](packages/vendra-permission), [Socialite](packages/vendra-socialite)Operations and localization[Activity Log](packages/vendra-activity-log), [Authify Log](packages/vendra-authify-log), [Developer Logins](packages/vendra-developer-logins) (development only), [Language](packages/vendra-language), [Localization](packages/vendra-localization)API Platform modules[Affiliate API](packages/vendra-affiliate-api), [Attribute API](packages/vendra-attribute-api), [Blog API](packages/vendra-blog-api), [Cart API](packages/vendra-cart-api), [Custom Page API](packages/vendra-custom-page-api), [FAQ API](packages/vendra-faq-api), [Multimedia API](packages/vendra-multimedia-api), [Product API](packages/vendra-product-api)Domain packages depend on the provider-neutral contracts in Vendra Support. Installing Vendra Tenant activates tenant awareness by binding the concrete resolver; domain and API packages do not depend on the tenant provider.

The host exposes the package-owned API Platform resources below `/api` and publishes OpenAPI documentation at `/api/docs`. Frontend code should use the dedicated `window.api` fetch client configured in `resources/js/bootstrap.js`. Domain endpoints use `/api/{admin-navigation-group}/{model-resource}` so the public API follows the Filament admin structure, for example `/api/catalog/products`.

Docker
------

[](#docker)

The `docker/Dockerfile` builds the production image (FrankenPHP, Composer install from the committed lock file, Vite asset build). Pushing a `MAJOR.MINOR.PATCH` tag publishes `linux/amd64` and `linux/arm64` images to `ghcr.io/misaf/vendra` (`:1.0.0`, `:1.0`, `:latest`).

Host lifecycle and storefront containers are owned by the standalone Go controller at [vendra-controller](https://github.com/misaf/vendra-controller). Operators need only Docker and its `vendra` binary; this Laravel repository contains no Compose stack or Docker-socket integration.

Laravel stores tenant and storefront business state. Its queued provisioning, retry, and reconciliation workflows call the controller's authenticated `POST /v1/storefronts` API. Configure that boundary with `STOREFRONT_PROVISIONER_URL` and `STOREFRONT_PROVISIONER_TOKEN`.

Module Development
------------------

[](#module-development)

Modules are developed locally through symlinked Composer path repositories in `packages/*`.

Typical workflow:

1. Edit the module inside `packages/`.
2. Ensure the package is required in root `composer.json`.
3. Run `composer update ` or `composer dump-autoload` when needed.
4. Run the package's tests and static analysis as documented in its README.

For production builds, rely on installed Composer packages rather than local path repository workflows.

See [UPGRADING.md](UPGRADING.md) before changing the host application's Vendra release line.

Documentation and AI Guidance
-----------------------------

[](#documentation-and-ai-guidance)

Every package maintains the same documentation set:

- `README.md` is the user-facing contract for features, requirements, installation, usage, and package-level checks.
- `resources/boost/guidelines/core.blade.php` contains concise, always-loaded package boundaries and invariants.
- `resources/boost/skills/*/SKILL.md` contains the on-demand workflow and implementation guidance for that package.

Keep these files aligned with `composer.json`, the package source, and its tests. Describe optional integrations as optional, do not document behavior that is not implemented, and update all affected layers in the same change. The root `AGENTS.md`, `CLAUDE.md`, and `.agents/skills` files are generated by Laravel Boost and may be refreshed with:

```
php artisan boost:update --no-interaction
```

Testing
-------

[](#testing)

- Run the smallest relevant test scope first, then expand to broader suites only when necessary.
- Use `php artisan test --parallel` by default for targeted tests and full suites to minimize feedback time.
- Omit `--parallel` only when debugging a failure, investigating race conditions or concurrency issues, using shared mutable state or external resources that cannot be isolated, or when the execution environment does not support parallel testing.
- Keep intentionally non-parallel coverage, profiling, mutation testing, and benchmarking commands unchanged unless parallel execution is clearly safe.

```
php artisan test --parallel --compact
php artisan test --parallel --compact --filter=testName
vendor/bin/pint --dirty --format agent
composer stan
```

Troubleshooting
---------------

[](#troubleshooting)

- If package changes are not reflected, run `composer dump-autoload`.
- If provider discovery seems stale, run `php artisan package:discover`.
- If configuration values look outdated, run `php artisan config:clear`.
- If frontend changes do not appear, run `npm run dev` or `npm run build`.

License
-------

[](#license)

MIT. See [LICENSE](LICENSE).

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance96

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

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

Total

25

Last Release

10d ago

Major Versions

10.x-dev → v13.0.02026-07-10

0.2.0 → v1.0.02026-07-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/41fd7351d25e29dafa18068d0418eecf6bb47a7473aabe6bc674b4ca35e71805?d=identicon)[misaf](/maintainers/misaf)

---

Top Contributors

[![misaf](https://avatars.githubusercontent.com/u/8195685?v=4)](https://github.com/misaf "misaf (767 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (4 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (2 commits)")[![claude](https://avatars.githubusercontent.com/u/81847?v=4)](https://github.com/claude "claude (1 commits)")

---

Tags

frameworklaravelecommerceshoppingvendra

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/misaf-vendra/health.svg)

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

###  Alternatives

[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1239.7k25](/packages/fleetbase-core-api)[laravel/ai

The official AI SDK for Laravel.

1.1k4.6M328](/packages/laravel-ai)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

265.2k](/packages/aedart-athenaeum)[api-platform/laravel

API Platform support for Laravel

58190.1k21](/packages/api-platform-laravel)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5226.7k](/packages/simplestats-io-laravel-client)[masterix21/laravel-licensing

Laravel licensing package with polymorphic assignment to any model, activation keys, expirations/renewals, and seat control via LicenseUsage. Supports offline verification with public-key–signed tokens, a CLI to generate/rotate/revoke keys, and an extensible architecture via config and contracts.

1614.1k4](/packages/masterix21-laravel-licensing)

PHPackages © 2026

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