PHPackages                             minerva-framework/minerva-frontql - 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. minerva-framework/minerva-frontql

ActiveLibrary[Framework](/categories/framework)

minerva-framework/minerva-frontql
=================================

FrontQL é uma estrutura de queries para front-end para utilização com o Zend Framework.

v1.0.8(8y ago)02.4kproprietaryPHP

Since Nov 24Pushed 8y agoCompare

[ Source](https://github.com/minerva-framework/minerva-frontql)[ Packagist](https://packagist.org/packages/minerva-framework/minerva-frontql)[ RSS](/packages/minerva-framework-minerva-frontql/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (9)Dependencies (2)Versions (10)Used By (0)

[![](https://camo.githubusercontent.com/6603658f8570d5072139d561db4fccdaee2aea0145f8a4aa34f9007824b2cbdd/687474703a2f2f692e696d6775722e636f6d2f316473474252442e706e67)](https://camo.githubusercontent.com/6603658f8570d5072139d561db4fccdaee2aea0145f8a4aa34f9007824b2cbdd/687474703a2f2f692e696d6775722e636f6d2f316473474252442e706e67)

[![Build Status](https://camo.githubusercontent.com/37af99ed6f518d7fa560cb316e118e8b29e2dc18f81abea7e2fd0cf703969394/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f6261646765732f6275696c642e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/minerva-framework/minerva-frontql/build-status/master) [![Scrutinizer Code Quality](https://camo.githubusercontent.com/a61d15cd07466955f3521be4bb9595fa6b1140d57213fc9a8414b9c4e235313f/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/minerva-framework/minerva-frontql/?branch=master) [![Code Coverage](https://camo.githubusercontent.com/c73c23591acf8b10a913ceeb6a9cd0557fae3558e649d3bc0690dade8b0f7956/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/minerva-framework/minerva-frontql/?branch=master) [![Latest Stable Version](https://camo.githubusercontent.com/97cf1bec4132f62da7b9f407af7ad06725755774be99e30af7f7ec70b1da95f2/68747470733a2f2f706f7365722e707567782e6f72672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f762f737461626c65)](https://packagist.org/packages/minerva-framework/minerva-frontql) [![Latest Unstable Version](https://camo.githubusercontent.com/3e52253af55b205263947a321dd10fff1deda60b5e9e2e7072dfc191d7f89995/68747470733a2f2f706f7365722e707567782e6f72672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f762f756e737461626c65)](https://packagist.org/packages/minerva-framework/minerva-frontql) [![License](https://camo.githubusercontent.com/b630e360c14373c4012dc8087c6d13936dbbf929e2d6f0f13d6fcf30fd221b24/68747470733a2f2f706f7365722e707567782e6f72672f6d696e657276612d6672616d65776f726b2f6d696e657276612d66726f6e74716c2f6c6963656e7365)](https://packagist.org/packages/minerva-framework/minerva-frontql)

`composer require minerva-framework/minerva-frontql`

FrontQL é uma estrutura simplificada de queries para front-end compatível com Zend Framework. Utilizando o FrontQL você ganha mais flexibilidade no momento de montar suas consultas e realizar implementações de API, além de poupar tempo de trabalho e evitar que sejam criados diversos condicionamentos em suas actions deixando seu código desorganizado ou então com diversas implementações de estratégias desnecessárias.

No front-end
------------

[](#no-front-end)

No front-end você tem as opções de comands where, operadores where, seleção de colunas, limit e ordenamento. Nos comands where, o primeiro elemento da array é o nome do comando no Zend Framework, e os demais parâmetros são exigidos por este. Como operadores temos and, or, nest e unnest.

```
var select = {
   where  : [
      'nest',
      ['equalTo', 'Campanha.idcampanha', 11],
      'and',
      ['equalTo', 'Campanha.ativo', 1],
      'unnest',
      'or',
      ['equalTo', 'Campanha.idcampanha', 12]
   ],
   limit  : 5,
   offset : 0,
   order  : [
      [['Campanha.idcampanha'], 'DESC']
   ],
};

return ApiClient.post('/crm/api/v1/campanha/select', {fql: select});
```

No back-end
-----------

[](#no-back-end)

Quando o payload for recebido, basta instanciar o adapter, realizar a conversão, fazer os overrides se necessário, executar a query e construir a resposta.

```
// Query recebida do front-end
$payload = $this->params()->fromPost('fql');

// Conversão para Zend\Db\Sql\Select
$adapter = new SelectAdapter();
$adapter->setProtectedColumns(['name']);
$adapter->setSelectPayload(new SelectPayload($payload));
$query = $adapter->getSelect();

// Override
$query->limit(2);

// Consulta
$clientTable = new ClientTableGateway();
$resultSet = $clientTable->select($query);

// Resposta
$response = new JsonModel($resultSet->toArray());
return $response;
```

Resposta
--------

[](#resposta)

Seguindo o esboço acima você receberá uma resposta nesse padrão.

```
[
   {
      email: 'lucas@minervasistemas.com.br',
      idade: 21
   },
   {
      email: null,
      idade: 19
   }
]

```

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~43 days

Recently: every ~0 days

Total

9

Last Release

3109d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b2bcc2e83e3aa7c9b2b1f5e9b0fd9444580a5e97a12ffae9c88903040360be76?d=identicon)[hamboldt](/maintainers/hamboldt)

---

Top Contributors

[![lucasdearaujo](https://avatars.githubusercontent.com/u/2407611?v=4)](https://github.com/lucasdearaujo "lucasdearaujo (45 commits)")

### Embed Badge

![Health badge](/badges/minerva-framework-minerva-frontql/health.svg)

```
[![Health](https://phpackages.com/badges/minerva-framework-minerva-frontql/health.svg)](https://phpackages.com/packages/minerva-framework-minerva-frontql)
```

###  Alternatives

[pestphp/pest

The elegant PHP Testing Framework.

11.4k59.5M14.2k](/packages/pestphp-pest)[laravel/browser-kit-testing

Provides backwards compatibility for BrowserKit testing in the latest Laravel release.

5139.4M286](/packages/laravel-browser-kit-testing)[kohana/unittest

PHPUnit integration for running unit tests on the Kohana framework

11040.8k17](/packages/kohana-unittest)

PHPackages © 2026

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