PHPackages                             vortexphp/vortex - 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. vortexphp/vortex

ActiveProject[Framework](/categories/framework)

vortexphp/vortex
================

Lightweight PHP application stack (app/, config/, resources/views, routes/, lang/)

v0.12.0(3mo ago)15↓92.3%MITJavaScriptPHP ^8.2

Since Apr 3Pushed 3mo agoCompare

[ Source](https://github.com/vortexphp/vortex)[ Packagist](https://packagist.org/packages/vortexphp/vortex)[ RSS](/packages/vortexphp-vortex/feed)WikiDiscussions main Synced today

READMEChangelog (5)Dependencies (4)Versions (7)Used By (0)

Vortex Startup App
==================

[](#vortex-startup-app)

Minimal startup-ready PHP app on `vortexphp/framework`.

The `vortex` file in the project root is the CLI entry point (also registered in Composer `bin`). Run it with `php vortex ` (for example `php vortex serve`).

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

[](#requirements)

- PHP `8.2+`
- Composer
- Node.js + npm (for Tailwind CSS build)
- GNU Make (optional; use the `composer run …` equivalents below if you prefer)
- Docker (optional; see [Docker](#docker))

Monorepo development
--------------------

[](#monorepo-development)

`composer.json` includes **path** `repositories` so a full Vortex checkout can symlink `vendor/vortexphp/framework` and `vendor/vortexphp/live` to sibling packages while you work on the framework. That is optional: `vendor/` is gitignored, and installs from Packagist use normal package copies when those path entries are absent or unused. If you see symlinks under `vendor/vortexphp/`, you are using the local path repositories.

Quick start (clone)
-------------------

[](#quick-start-clone)

```
make setup          # composer install + npm install; copies .env.example → .env if .env is missing
# edit .env: set APP_KEY and APP_URL (see .env.example comments)
make build
make serve          # or: php vortex serve
```

Same without Make:

```
composer run setup
cp .env.example .env   # if you skipped `make setup`
composer run build
php vortex serve
```

Create Project
--------------

[](#create-project)

```
composer create-project vortexphp/vortex my-app
cd my-app
composer run setup
cp .env.example .env
```

Install (existing clone)
------------------------

[](#install-existing-clone)

```
composer install
npm install
cp .env.example .env
```

Generate `APP_KEY` and put it in `.env`:

```
php -r "echo 'base64:'.base64_encode(random_bytes(32)), PHP_EOL;"
```

Set at least:

- `APP_KEY`
- `APP_URL` (for local: `http://localhost:8000`)

Run Locally
-----------

[](#run-locally)

Build front-end assets (Tailwind → `public/css/app.css`, then copy Live → `public/js/live.js`):

```
make build
# or: composer run build
```

`npm run build` only compiles CSS; `composer run build` / `make build` also runs **`php vortex publish:assets`**, which copies package assets (for example **`vortexphp/live`** → `public/js/live.js`).

Watch CSS during development:

```
make dev
# or: npm run dev / composer run dev
```

Run the app:

```
php vortex serve
# or: make serve
```

Open:

- `http://localhost:8000/`
- `http://localhost:8000/health`

Useful Commands
---------------

[](#useful-commands)

```
make test              # or: composer run test
composer run doctor
composer run smoke
composer run db-check
```

Assets
------

[](#assets)

OutputSourceHow it is produced`public/css/app.css``ui/css/app.css`Tailwind: `npm run build` / `npm run dev``public/js/live.js``vendor/vortexphp/live/resources/live.js``php vortex publish:assets` (from **`LivePackage::publicAssets()`**); part of `composer run build`; also Composer **post-install** / **post-update**Templates reference `/css/app.css` and `/js/live.js` only. There is no separate `public/dist/` pipeline in this app; that path is gitignored to avoid duplicate stale files.

Database seeders
----------------

[](#database-seeders)

`database/seeders/DatabaseSeeder.php` (`Database\Seeders\DatabaseSeeder`) is the entry point for seed data. Wire it into your own commands or tooling as the project grows.

Exceptions
----------

[](#exceptions)

- `App\Exceptions\AppException` — base class for domain-level errors.
- `App\Exceptions\Handler` — implement `handle()` to return a custom `Response` for specific throwables; return `null` to use the framework `ErrorRenderer` (wired from `public/index.php`).

Docker
------

[](#docker)

Requires `vendor/` (run `composer install` on the host first). Then:

```
docker compose up
```

Serves on `http://127.0.0.1:8080/` (PHP built-in server, `0.0.0.0:8080` inside the container).

Production Install
------------------

[](#production-install)

```
composer run install:prod
composer run build
```

(`composer run build` runs `npm run build` and then syncs Live assets; Node is required for the Tailwind step.)

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance82

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity41

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 ~0 days

Total

6

Last Release

91d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/69676022?v=4)[Bozhidar](/maintainers/bobicloudvision)[@bobicloudvision](https://github.com/bobicloudvision)

---

Top Contributors

[![bobicloudvision](https://avatars.githubusercontent.com/u/69676022?v=4)](https://github.com/bobicloudvision "bobicloudvision (44 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/vortexphp-vortex/health.svg)

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

###  Alternatives

[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k39.6M299](/packages/laravel-dusk)[nineinchnick/edatatables

Grid widget for the Yii Framework, wrapper for the DataTables jQuery plugin

173.2k](/packages/nineinchnick-edatatables)[link-cloud/fast-hyperf

LinkCloud Fast Hyperf

241.2k1](/packages/link-cloud-fast-hyperf)

PHPackages © 2026

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