> For the complete documentation index, see [llms.txt](https://docs.phptravels.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.phptravels.com/support/for-developers.md).

# For Developers

PHPTRAVELS developer docs: the v10 routing system, Medoo database architecture, API version 9, adding modules and suppliers, and new payment gateways.

PHPTRAVELS v10 is a self-hosted PHP travel booking platform. Developers extend modules, suppliers and payment gateways on top of a lightweight router, Medoo database access and MySQL or MariaDB.

### Stack overview

| Layer          | What v10 uses                                                          |
| -------------- | ---------------------------------------------------------------------- |
| Language       | PHP                                                                    |
| Routing        | qaxim/php-router (single entry point, route files, groups, custom 404) |
| Database       | MySQL or MariaDB                                                       |
| ORM / DB layer | Medoo (credentials from `.env`)                                        |
| Config         | Environment-based `.env` settings                                      |
| HTTP API       | API Version 9 docs in this section                                     |

### Start here

Follow this path on a new codebase:

1. [**Routing System**](https://docs.phptravels.com/support/for-developers/routing-system) -- How requests enter `index.php`, how routes are declared, parameters, groups and 404 handling.
2. [**Database Architecture**](https://docs.phptravels.com/support/for-developers/database-architecture) -- Medoo usage, `.env` connection, tables, joins, transactions and practices.
3. [**Adding a Module**](/support/for-developers/adding-a-module.md) -- Module and supplier backend guide.
4. [**Adding Payment Gateway**](https://docs.phptravels.com/support/for-developers/adding-payment-gateway) -- Database row, admin parameters, keys, source file and booking test (Paystack example).

Then open [**API Version 9**](https://docs.phptravels.com/support/for-developers/api-version-9) when you integrate external clients.

### Child pages

* [Routing System](https://docs.phptravels.com/support/for-developers/routing-system)
* [Database Architecture](https://docs.phptravels.com/support/for-developers/database-architecture)
* [API Version 9](https://docs.phptravels.com/support/for-developers/api-version-9): PHPTRAVELS API Docs
* [Adding a Module](/support/for-developers/adding-a-module.md): PHPTRAVELS v10 -- Module and Supplier Backend Developer Guide
* [Adding Payment Gateway](https://docs.phptravels.com/support/for-developers/adding-payment-gateway)
