search hotlink icon profile hotlink icon
Ma public|1.0.0

Package Info

Maze is a PHP router that maps HTTP requests to custom entries, such as controllers responsible for handling specific web app logic.

Repository

gitlab.com

Activity

  • Created on Aug 03, 2025
  • Updated on Sep 05, 2025

Statistics

  • 2 requests
  • 1 versions

Build Methods

Nested Dependency

To build this package as a nested dependency of your package, add its default registry source valvoid.com/valvoid/maze/1.0.0 to one of your metadata files:

"/dependencies": [
    "valvoid.com/valvoid/maze/1.0.0"
]

Standalone

To build this package as an independent root package, extend the build command with the default registry source valvoid.com/valvoid/maze/1.0.0 as follows:

fusion build build.source=valvoid.com/valvoid/maze/1.0.0

Optional Repository Source

In addition, to build an offset reference version, replace the default registry source in installation methods mentioned above with the VCS source prefix gitlab.com/valvoid/maze/'code/, and refer to the linked source code repository for possible branches, commits, and tags to use as the suffix.

Metadata

The synchronized package's metadata file, fusion.json, contains the following content:

{
    "name": "Maze",
    "description": "A PHP Router.",
    "id": "valvoid/maze",
    "version": "1.0.0",
    "structure":  {
        "/cache/fusion": "cache",
        "/dependencies": "valvoid.com/valvoid/box/1.0.0",
        "/configs": "extension",
        "/routes": "extension"
    },
    "environment": {
        "php": {
            "version": "8.1.0"
        }
    }
}

Readme: About Maze

Maze is a PHP router that maps HTTP requests to custom entries, such as controllers responsible for handling specific web app logic.

Documentation

The separated documentation repository also has the user-friendly output and contains information about the following key features:

Extendable Routes and Config

For routes and config files, Maze uses Fusion's out-of-the-box extension implementation, allowing dependency packages in the chain to be extended by consumer packages, for example:

The chain can include as many extender packages as your project requires.

Efficient Lookup

Maze does not load all possible routes for a lookup. Cached routes are organized by request methods (GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD), with each method stored in a separate cached file, while raw files are checked in top-down extender order, stopping at the first match.

Contribution

Each merge request serves as confirmation to transfer ownership to the project and must meet the following criteria:

See the contributing file if these criteria apply to you.

License

Maze - PHP Router
Copyright © Valvoid

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see licenses.