PHPackages                             phpgl/visu - 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. phpgl/visu

ActiveLibrary[Framework](/categories/framework)

phpgl/visu
==========

A Modern OpenGL Framework for PHP, ex php-game-framework.

v1.0.0(2y ago)2238878[2 PRs](https://github.com/phpgl/visu/pulls)MITPHPPHP &gt;=8.1CI passing

Since Dec 19Pushed 4mo ago5 watchersCompare

[ Source](https://github.com/phpgl/visu)[ Packagist](https://packagist.org/packages/phpgl/visu)[ RSS](/packages/phpgl-visu/feed)WikiDiscussions master Synced 1mo ago

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

[![logo_s](https://user-images.githubusercontent.com/956212/192290126-b8c481de-9f22-4a8d-99b5-0ea16300ae70.png)](https://user-images.githubusercontent.com/956212/192290126-b8c481de-9f22-4a8d-99b5-0ea16300ae70.png)

VISU - PHP Game Framework
=========================

[](#visu---php-game-framework)

A Modern OpenGL Framework for PHP, ex php-game-framework. VISU aims to be a simple, yet powerful framework for creating 2D and 3D games and applications. It comes with high level abstractions for common tasks but also allows you to access the underlying OpenGL API directly. Additionally, VISU provides an optional framework structure to quickly bootstrap a new application.

**Visu is built on top of [PHP-GLFW](https://phpgl.net) so make sure the extension is installed and enabled.**

Features
--------

[](#features)

- Shader Management with Support for Macros and Includes
- Transition Animation System
- Command Line Interface for Creating Build Tools/Scripts
- An Entity Component System (ECS)
- Low-Poly Rendering Pipeline
- Tons of Helpers and Geometric Abstractions like Bounding Boxes, Raycasting, Transformations, etc.
- A Render Graph-ish Rendering Pipeline for Managing &amp; Creating Complex and Deep Rendering Pipelines.
- Render Resource Management.
- Texture Manager, Loaders, and Helpers.
- Font Rendering
- Basic Heightmap Capturing
- Gizmo Rendering
- SSAO Render Pass
- Basic 3D Debugging Helpers (Drawing Bounding Boxes, Rays, etc.)
- Framebuffer Management and Abstractions.
- Basic Profiling, GPU and CPU Time.
- Fixed Timestep Game Loop
- Input Handling (Mouse &amp; Keyboard) with Key Binding Maps and Different Interaction Maps.
- Event Dispatching.
- Quickstart Collections to Rapidly Get an App Started.
- In-Game Interactive Console.
- Signal Queues.
- Camera System for 2D and 3D.
- And Much More.

Usage
-----

[](#usage)

Want to build something with VISU?

Check out the docs: visu.phpgl.net/

### Quickstart

[](#quickstart)

Use Composer to create a new project based on visu-quickstart:

```
composer create-project phpgl/visu-quickstart -s dev --prefer-dist my-visu-project
```

After the installation is complete, you can start the application by running:

```
cd my-visu-project
php ./bin/start.php
```

### Scafolding

[](#scafolding)

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance52

Moderate activity, may be stable

Popularity33

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 98.6% 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

Unknown

Total

1

Last Release

1031d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1b22b6cd3db7191046069cd7dd954e97585d9de1901403f8394c7eb7ae77056e?d=identicon)[clancats](/maintainers/clancats)

---

Top Contributors

[![mario-deluna](https://avatars.githubusercontent.com/u/956212?v=4)](https://github.com/mario-deluna "mario-deluna (204 commits)")[![borisstock](https://avatars.githubusercontent.com/u/156002?v=4)](https://github.com/borisstock "borisstock (2 commits)")[![bariscodefxy](https://avatars.githubusercontent.com/u/85716242?v=4)](https://github.com/bariscodefxy "bariscodefxy (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/phpgl-visu/health.svg)

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

###  Alternatives

[locomotivemtl/charcoal-app

Charcoal application, based on Slim 3

1320.3k12](/packages/locomotivemtl-charcoal-app)

PHPackages © 2026

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