# Dependencies — TinyPOS (`tnx-pos`)

> Produced by the Reversa **Scout** (phase: reconnaissance) · doc_level: `complete`
> Generated on 2026-09-16

**Confidence scale:** 🟢 CONFIRMED · 🟡 INFERRED · 🔴 GAP

Package managers: **Composer** (PHP) and **npm** (frontend build). 🟢

---

## 1. PHP runtime

| Requirement | Version | Source |
|-------------|---------|--------|
| PHP | `7.4.33` | `composer.json` 🟢 |

---

## 2. PHP dependencies (Composer)

### Runtime (`require`)

| Package | Constraint | Resolved | Purpose | Confidence |
|---------|-----------|----------|---------|------------|
| `laravel/framework` | `5.6.*` | `v5.6.39` | Core web framework | 🟢 |
| `salipropham/laravel55-admin` | `0.1.*` | — | Admin scaffolding: auth routes, admin menu/UI, RBAC | 🟢 |
| `laravelcollective/html` | `5.6.*` | — | HTML/Form builders for Blade views | 🟢 |
| `laravel/tinker` | `^1.0` | — | REPL / interactive console | 🟢 |
| `intervention/image` | `^2.7` | — | Image manipulation (product/logo images) | 🟢 |
| `fideloper/proxy` | `^4.0` | — | Trusted proxy handling | 🟢 |

> Resolved versions other than the framework were not pinned here from `composer.lock`; only `laravel/framework` was confirmed at `v5.6.39`. 🟡

### Dev (`require-dev`)

| Package | Constraint | Purpose | Confidence |
|---------|-----------|---------|------------|
| `phpunit/phpunit` | `^7.0` | Test runner | 🟢 |
| `mockery/mockery` | `^1.0` | Test mocking | 🟢 |
| `fzaninotto/faker` | `^1.4` | Fake data for seeds/factories | 🟢 |
| `filp/whoops` | `^2.0` | Pretty error pages (dev) | 🟢 |
| `nunomaduro/collision` | `^2.0` | CLI error reporting | 🟢 |

### Autoload

- PSR-4: `App\` → `app/`. 🟢
- Classmap: `database/seeds`, `database/factories`. 🟢
- Files: `app/helpers.php`. 🟢

### Notable Composer config

- Custom VCS repository: `https://github.com/salipropham/laravel55-admin.git`. 🟢
- `minimum-stability: dev`, `prefer-stable: true`. 🟢
- `post-autoload-dump` runs `patch_package_manifest.php` then `artisan package:discover`. 🟡 (custom manifest patching — investigate why during excavation)

---

## 3. Frontend dependencies (npm)

Declared under `devDependencies` (build-time; `private: true`). 🟢

| Package | Constraint | Purpose |
|---------|-----------|---------|
| `vue` | `^2.5.7` | Frontend components |
| `bootstrap` | `^4.0.0` | UI framework |
| `jquery` | `^3.2` | DOM/admin scripts |
| `popper.js` | `^1.12` | Bootstrap tooltips/popovers |
| `axios` | `^0.18` | HTTP client (frontend) |
| `lodash` | `^4.17.4` | Utility library |
| `laravel-mix` | `^2.0` | Asset build pipeline (`webpack.mix.js`) |
| `cross-env` | `^5.1` | Cross-platform env vars for scripts |

### npm scripts

- `dev` / `development`, `watch`, `watch-poll`, `hot` — Laravel Mix / webpack dev builds. 🟢
- `prod` / `production` — production asset build. 🟢
- `setup`, `setup:opsx`, `setup:skills` — project setup shell scripts under `scripts/`. 🟢

---

## 4. Infrastructure / operational dependencies

| Dependency | Where | Confidence |
|------------|-------|------------|
| MariaDB 10.11.13 | `config/database.php` default connection; `.env` `DB_*` | 🟢 |
| Apache + mod_php (`www-data`) | `docker/apache/`, `README.md` | 🟢 |
| Nginx (alt config) | `docker/nginx/default.conf` | 🟢 |
| Docker / docker-compose | `docker/` | 🟢 |
| System cron | `deploy/cron.d/tnx-pos-dev` → `php artisan schedule:run` | 🟢 |
| GitLab CI runner | `.gitlab-ci.yml` (`pos-dev` deploy job) | 🟢 |

---

## 5. Observations

- 🟡 The stack is dated (Laravel 5.6, released 2018; PHP pinned to 7.4.33 which is EOL). Relevant for any future `/reversa-migrate` planning.
- 🔴 Exact resolved versions for most Composer packages are in `composer.lock` but were not fully enumerated here — the Archaeologist/Data Master can pin them if version-sensitive behavior is found.
- 🟡 `salipropham/laravel55-admin` is the backbone for auth + RBAC + menu; its internals live in `vendor/` and shape much of the app's permission model.
