PHPackages                             wayaans/tyanc - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. wayaans/tyanc

ActiveProject[Authentication &amp; Authorization](/categories/authentication)

wayaans/tyanc
=============

Tyanc starter kit for Laravel.

v0.1.8(3mo ago)17MITPHPPHP ^8.5.0

Since Apr 14Pushed 3mo agoCompare

[ Source](https://github.com/Wayaans/tyanc)[ Packagist](https://packagist.org/packages/wayaans/tyanc)[ RSS](/packages/wayaans-tyanc/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (31)Versions (8)Used By (0)

Tyanc
=====

[](#tyanc)

Tyanc is the admin foundation you install before the real apps arrive.

It gives you the platform pieces that serious products always end up needing anyway: authentication, users, roles, permissions, app access, page access, settings, approvals, notifications, files, and the shared admin shell.

`tyanc` is the control plane. `cumpu` is the approval workspace. Apps like ERP or Tasks plug in beside them under their own prefixes.

Why Tyanc exists
----------------

[](#why-tyanc-exists)

Tyanc is not a one-off dashboard for one product.

It is the shared platform layer for many apps. That means the cross-app rules stay in one place while each business app keeps its own routes, pages, actions, and UI.

In practice, Tyanc is where you keep things such as:

- users
- roles and permissions
- app registry
- app and page access
- platform settings
- approval infrastructure
- shared admin navigation

What lives where
----------------

[](#what-lives-where)

Keep this mental model simple:

- `tyanc/*` → platform governance
- `cumpu/*` → approval inbox, my requests, reports, approval rules, and review workflow
- `/{app}/*` → real business apps like `erp/*` or `tasks/*`
- `/settings/*` → personal account settings for the signed-in user

If a feature belongs to ERP, build it in ERP. If it governs ERP access, registration, or permissions, build it in Tyanc. If it is about reviewing or managing approvals, build it in Cumpu.

What you get out of the box
---------------------------

[](#what-you-get-out-of-the-box)

Tyanc is built around:

- Laravel 13 + PHP 8.5
- Inertia v3 + Vue 3 + TypeScript
- shadcn-vue UI patterns
- Spatie Laravel Permission for RBAC
- Spatie Laravel Data for typed payloads
- a shared admin shell with app switching
- centralized approvals through Cumpu

The one thing not to forget when adding a new app
-------------------------------------------------

[](#the-one-thing-not-to-forget-when-adding-a-new-app)

Permissions are part of the app, not follow-up work.

When you add a real app such as `erp` or `tasks`, keep these in sync from the start:

1. the app key
2. the route prefix
3. the permission namespace
4. `config/permission-sot.php`
5. `config/sidebar-menu.php`
6. the app registry in `apps` and `app_pages`

A new app is not really done if routes exist but permissions do not. That mismatch breaks access control, app visibility, page visibility, and approval-rule options.

### Practical checklist for a new app

[](#practical-checklist-for-a-new-app)

- add the app and its resources to `config/permission-sot.php`
- add the app menu to `config/sidebar-menu.php`
- keep code under the app namespace, for example `app/Actions/Erp/*` and `resources/js/pages/erp/*`
- sync the app registry with `php artisan tyanc:apps-sync --no-interaction`
- sync permissions with `php artisan tyanc:permissions-sync --no-interaction`
- run `php artisan wayfinder:generate --no-interaction` if frontend route helpers changed

If you introduce a new action verb like `publish`, `cancel`, or `submit`, add it to the top-level action map in `config/permission-sot.php` too.

How approvals work now
----------------------

[](#how-approvals-work-now)

Tyanc uses a simpler approval model now.

Approval is a gate-and-grant flow:

- the real domain action is blocked before mutation
- the requester gives a reason
- Cumpu reviewers review the request
- after approval, the same requester retries the same action once
- the grant is consumed on successful use

The important part is this: approval attaches to the real action permission. If `erp.orders.delete` needs approval, the governed action is still `erp.orders.delete`. It is not a fake approval resource. Cumpu handles the review workflow, but the business app still owns the real mutation.

Install as a Laravel starter kit
--------------------------------

[](#install-as-a-laravel-starter-kit)

After publishing `wayaans/tyanc` to Packagist, use the Laravel installer:

```
laravel new my-app --using=wayaans/tyanc
cd my-app
bun install
composer dev
```

Or install it directly with Composer:

```
composer create-project wayaans/tyanc my-app
cd my-app
bun install
composer dev
```

The starter kit install scripts copy `.env`, generate the app key, create the SQLite database, run migrations, and run `php artisan tyanc:bootstrap-local --no-interaction`.

Develop this repository directly
--------------------------------

[](#develop-this-repository-directly)

```
composer setup
composer dev
```

`composer setup` already runs the local Tyanc bootstrap, so you do not need a separate `composer bootstrap:local` step.

Production bootstrap
--------------------

[](#production-bootstrap)

```
php artisan tyanc:bootstrap --no-interaction
php artisan tyanc:create-super-admin
```

If you also need Reverb locally, run:

```
composer run "full dev"
```

If a frontend change does not show up, make sure Vite is running or rebuild the frontend.

Read this next
--------------

[](#read-this-next)

- `TYANC-AI.md` — the architecture contract for AI agents and implementation work
- `AGENTS.md` — project workflow rules
- `.docs/tyanc-prd.md` — broader product direction
- `.docs/tyanc-approval-simplification-prd.md` — current approval model direction

If you are working with AI agents in this repo, start with `TYANC-AI.md` first.

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance82

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 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

Every ~1 days

Total

6

Last Release

94d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/13df309bb1ee757a93bd5b9632bb64e0a5592d841787cb2a37e37cec362b728c?d=identicon)[Wayaans](/maintainers/Wayaans)

---

Top Contributors

[![Wayaans](https://avatars.githubusercontent.com/u/38068544?v=4)](https://github.com/Wayaans "Wayaans (74 commits)")

---

Tags

laravelrbacinertiaadminstarter-kitvuetyanc

###  Code Quality

TestsPest

Static AnalysisPHPStan, Rector

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/wayaans-tyanc/health.svg)

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

###  Alternatives

[nasirkhan/laravel-starter

A CMS like modular Laravel starter project.

1.4k2.7k](/packages/nasirkhan-laravel-starter)[typicms/base

A modular multilingual CMS built with Laravel, enabling developers to manage structured content like pages, news, events, and more.

1.6k20.4k](/packages/typicms-base)[nunomaduro/laravel-starter-kit-inertia-react

The skeleton application for the Laravel framework.

2071.1k](/packages/nunomaduro-laravel-starter-kit-inertia-react)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1235.9k21](/packages/fleetbase-core-api)

PHPackages © 2026

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