PHPackages                             duon/quma - 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. [Database &amp; ORM](/categories/database)
4. /
5. duon/quma

ActiveLibrary[Database &amp; ORM](/categories/database)

duon/quma
=========

A no-ORM database library for executing raw SQL files

0.1.1(3mo ago)0136[1 PRs](https://github.com/duonrun/quma/pulls)1MITPHPPHP ^8.5CI passing

Since Jan 31Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/duonrun/quma)[ Packagist](https://packagist.org/packages/duon/quma)[ Docs](https://duon.run/quma)[ RSS](/packages/duon-quma/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (5)Used By (1)

Quma
====

[](#quma)

[![Software License](https://camo.githubusercontent.com/074b89bca64d3edc93a1db6c7e3b1636b874540ba91d66367c0e5e354c56d0ea/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e737667)](LICENSE.md)[![Codacy Badge](https://camo.githubusercontent.com/e2333212979dcf67b88390684694b883fb68cadde945c8bbd378d78536d3467b/68747470733a2f2f6170702e636f646163792e636f6d2f70726f6a6563742f62616467652f47726164652f3237346436316165353933343463343838363864383864613261636436613563)](https://app.codacy.com/gh/duonrun/quma/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)[![Codacy Badge](https://camo.githubusercontent.com/59d9c761e38754401d9c56a5022389d804492b18e0b88a190fbb09b9a897902a/68747470733a2f2f6170702e636f646163792e636f6d2f70726f6a6563742f62616467652f436f7665726167652f32373464363161653539333434633438383638643838646132616364366135633f6272616e63683d6d61696e)](https://app.codacy.com/gh/duonrun/quma/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_coverage)[![Psalm level](https://camo.githubusercontent.com/e1d7ff3d32384b49f8bed1a1839ae15fc2db83100297349d37d9a73a2c63c177/68747470733a2f2f73686570686572642e6465762f6769746875622f64756f6e72756e2f71756d612f6c6576656c2e7376673f)](https://duonrun.dev/quma)[![Psalm coverage](https://camo.githubusercontent.com/3550824e0b53df3bdc8b8f85e5b7ae71d307a48aa5073effe2f692ed5b4f4294/68747470733a2f2f73686570686572642e6465762f6769746875622f64756f6e72756e2f71756d612f636f7665726167652e7376673f)](https://shepherd.dev/github/duonrun/quma)

Quma is a no-ORM database library for PHP. You store SQL in files, group those files in folders, and execute them through a small PDO-backed API. Quma also ships with template queries and a migration runner.

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

[](#requirements)

Quma currently requires:

- PHP 8.5 or newer
- `ext-json`
- `ext-pdo`
- `ext-readline`

Install
-------

[](#install)

```
composer require duon/quma
```

Quickstart
----------

[](#quickstart)

Create a SQL directory structure like this:

```
sql/
  users/
    byId.sql
    list.sql

```

Add a query file:

```
SELECT id, email FROM users WHERE id = ?;
```

Then configure Quma and run the query:

```
