PHPackages                             gustocoder/dorguzen - 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. gustocoder/dorguzen

ActiveProject[Framework](/categories/framework)

gustocoder/dorguzen
===================

Powerful PHP Framework. No Black Box. A full-featured PHP MVC framework that keeps abstraction low by design — so you ship fast and actually understand every line of your application.

v1.4.1(2w ago)23MITPHPPHP &gt;=8.0CI failing

Since Apr 21Pushed 2w ago1 watchersCompare

[ Source](https://github.com/gustavNdamukong/Dorguzen)[ Packagist](https://packagist.org/packages/gustocoder/dorguzen)[ Docs](https://github.com/gustavNdamukong/Dorguzen)[ RSS](/packages/gustocoder-dorguzen/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (4)Dependencies (36)Versions (11)Used By (0)

 [![Dorguzen](assets/images/dorguzen-logo.png)](assets/images/dorguzen-logo.png)

Dorguzen Framework
==================

[](#dorguzen-framework)

### Powerful PHP Framework. No Black Box.

[](#powerful-php-framework-no-black-box)

Dorguzen is a full-featured PHP MVC framework designed to give you everything you need to build fast, secure, and scalable web applications — without hiding how any of it works.

Most frameworks make development easier by wrapping PHP in layers of abstraction so thick that you end up learning the framework's own language (DSL) instead of PHP itself. Dorguzen takes a different approach: it keeps the ease, but strips away the abstraction. Every feature is built on straightforward PHP patterns with clear, teachable documentation that explains not just *what* to do, but *why*. The result is that a Dorguzen developer genuinely understands the architecture behind what they are building. That understanding is transferable — skills learned here apply directly to any PHP application, framework or not.

**Dorguzen does not just help you ship faster. It makes you a better PHP developer.**

Out of the box you get routing, controllers, models, views, an ORM, migrations, seeders, a CLI tool, built-in authentication, an admin dashboard, a REST API layer with interactive Swagger documentation, queues, events, scheduled tasks, and more.

---

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

[](#requirements)

- PHP &gt;= 8.0
- The **GD extension** (with PNG/JPEG/GIF/WebP support) — required by the bundled `DGZ_Uploader` for image thumbnails (Gallery, Portfolio, Blog image uploads). On cPanel: *Select PHP Version → Extensions → `gd`*.
- Composer
- MySQL / MariaDB (or PostgreSQL / SQLite for alternative drivers)
- Apache with `mod_rewrite` enabled (or use the built-in development server — see below)

---

Installation
------------

[](#installation)

Dorguzen is available on [Packagist](https://packagist.org/packages/gustocoder/dorguzen).

### Option A — Via Composer (recommended)

[](#option-a--via-composer-recommended)

```
composer create-project gustocoder/dorguzen my-app
cd my-app
```

Replace `my-app` with your project folder name. Composer will pull the latest stable release from Packagist and install all dependencies automatically — no separate `composer install` step needed.

### Option B — Clone from GitHub

[](#option-b--clone-from-github)

```
git clone https://github.com/gustavNdamukong/Dorguzen.git my-app
cd my-app
composer install
```

### 2. Set up your environment file

[](#2-set-up-your-environment-file)

Dorguzen ships with `.env.example` as a template listing every variable the framework expects.

```
cp .env.example .env
```

Optionally, use the local .env file if you would prefer to override some settings like DB connection details locally.

```
cp .env.local.example .env.local
```

Open `.env` and fill in the values for your local setup. At minimum, set:

```
APP_NAME=yourAppName
APP_URL=http://localhost/yourAppName

LOCAL_URL=http://localhost/yourAppName/
FILE_ROOT_PATH_LOCAL=/yourAppName/

DB_CONNECTION=mysqli
DB_HOST=127.0.0.1
DB_DATABASE=your_database_name
DB_USERNAME=your_db_user
DB_PASSWORD=your_db_password
DB_KEY=a-random-encryption-key
```

> `DB_KEY` is used to AES-encrypt password fields in the database. Choose any random string and keep it consistent — changing it after data has been inserted will break password verification.

Fill in the values of the `.env.local` too, if you are using it for the local setup.

Then edit configs/app.php to pull from the values you set in .env, though you can add extra literal environment values there too.

See the **Setup &amp; Config** section of `docs` for the full list of available variables including mail, JWT, Stripe, Twilio, and module flags.

### 4. Create the database

[](#4-create-the-database)

Create a MySQL database matching the name you set in `DB_DATABASE`, then run the migrations:

```
php dgz migrate
```

This creates all the core tables (users, logs, jobs, SEO, contact form messages, etc.).

### 5. Seed the database

[](#5-seed-the-database)

```
php dgz db:seed
```

This seeds the default super-admin account (see credentials below), and your application's baseSettings table with some default values to get you started.

### 6. Point your web server at the project root

[](#6-point-your-web-server-at-the-project-root)

**Apache (MAMP / XAMPP)**

Set the document root (or virtual host) so that `http://localhost/yourAppName` points to the project root directory containing `index.php`. Apache's `mod_rewrite` must be enabled and `AllowOverride All` must be set for the directory so that `.htaccess` is processed.

The visit: `http://localhost/yourAppName` and your web application should work.

**Built-in PHP development server**

If you prefer not to configure Apache, Dorguzen ships with a `serve` command:

```
php dgz serve
```

This starts the app on `http://localhost:8000` by default. You can customise the port:

```
php dgz serve --port=9000
```

> The built-in server is suitable for local development only. Use Apache or Nginx in production.

---

The dorguzapp Sample Application
--------------------------------

[](#the-dorguzapp-sample-application)

Out of the box Dorguzen ships with **dorguzapp** — a ready-made application skeleton you can use as the starting point for your own project. All controllers, models, views, and routes are already wired up and working.

A standard user account is pre-configured in the sample app so you can log in immediately:

FieldValueEmailPasswordAdmin123> Change these credentials once you start customising the app for your own project.

---

Admin Dashboard
---------------

[](#admin-dashboard)

Dorguzen includes a built-in admin dashboard available at `/admin/dashboard` once you are logged in as a super-admin.

Out of the box the dashboard lets you:

- **Manage users** — view all registered accounts, change user roles, activate or deactivate accounts
- **Change your own username and password** — update your admin credentials from the profile screen
- **View contact form messages** — all messages submitted through your site's contact form are stored in the database and readable from the dashboard

The default super-admin account created by the seeder is:

FieldValueEmailPasswordAdmin123> Change these credentials immediately after your first login.

---

Testing the API in the Browser
------------------------------

[](#testing-the-api-in-the-browser)

Dorguzen ships with interactive API documentation powered by OpenAPI and Swagger UI. No external tool is needed — visit the docs URL in any browser and you can read the full spec and fire live requests directly from the page.

**URL:**

```
http://localhost/yourAppName/api/v1/docs

```

Replace `yourAppName` with the value you set for `APP_NAME` in your `.env`.

[![Dorguzen API Docs](assets/images/apiDocs.png)](assets/images/apiDocs.png)

The docs page lists every API endpoint, shows required inputs and expected responses, and includes an **Authorize** button where you can paste a JWT token to test protected routes.

To enable the docs, make sure your `.env` contains:

```
API_DOCS_ENABLED=true
```

This is the default for local development. For production, set it to `false` if your API is private, or leave it `true` if you are building a public developer-facing API.

---

Running Tests
-------------

[](#running-tests)

Dorguzen includes a PHPUnit test suite with a dedicated SQLite in-memory database so tests run fully isolated from your development database.

```
vendor/bin/phpunit
```

No separate database setup is needed — the test bootstrap handles everything automatically.

---

CLI Reference
-------------

[](#cli-reference)

The `dgz` CLI tool handles migrations, seeders, code generation, the development server, and more. Run any command from your project root:

```
php dgz
```

Common commands:

CommandDescription`php dgz migrate`Run all pending migrations`php dgz migrate:rollback`Roll back the last batch`php dgz migrate:fresh`Drop all tables and re-run migrations`php dgz migrate:status`Show migration state`php dgz db:seed`Run the database seeder`php dgz make:model Name`Generate a model class`php dgz make:migration name`Generate a migration file`php dgz serve`Start the built-in development serverTo see the full list of available commands:

```
php dgz list
```

---

Documentation
-------------

[](#documentation)

Full developer documentation is in `docs/dgzDocs.md`. It covers routing, controllers, models, views, authentication, the ORM, migrations, seeders, queues, events, the REST API, SEO module, payments, and more.

---

License
-------

[](#license)

MIT

---

Credits
-------

[](#credits)

Dorguzen is developed and maintained by [Nolimit Media](https://nolimitmedia.ca).

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance96

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

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

Total

10

Last Release

20d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/52424506?v=4)[gustoCoder](/maintainers/gustavNdamukong)[@gustavNdamukong](https://github.com/gustavNdamukong)

---

Top Contributors

[![gustavNdamukong](https://avatars.githubusercontent.com/u/52424506?v=4)](https://github.com/gustavNdamukong "gustavNdamukong (118 commits)")[![unidentified-18](https://avatars.githubusercontent.com/u/283249690?v=4)](https://github.com/unidentified-18 "unidentified-18 (20 commits)")

---

Tags

phpcliframeworkswaggeropenapiAuthenticationormmigrationsmvcREST APIadmin dashboardphp frameworkrapid-development

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/gustocoder-dorguzen/health.svg)

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

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k543.8M20.5k](/packages/laravel-framework)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6942.5M425](/packages/drupal-core-recommended)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M600](/packages/shopware-core)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k64](/packages/open-dxp-opendxp)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.2k18.1k](/packages/prestashop-prestashop)

PHPackages © 2026

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