Download the PHP package owlookit/quickrep without Composer

On this page you can find all versions of the php package owlookit/quickrep. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package quickrep

Quickrep Reporting Engine

[Version]() [License]() [PHP]() [Laravel]()

A PHP reporting engine for Laravel that turns SQL (and Query Builders) into rich, interactive, web-based reports.


What Quickrep is

Quickrep lets report authors focus primarily on data selection (SQL SELECT) while the engine handles:

Historically Quickrep assumed a single SQL database (MySQL/MariaDB).
Starting with v1.0.1, Quickrep supports a 3-layer database topology that enables scalable analytics in production systems.


Core Reporting Features


Architecture (v1.0.1)

Quickrep Engine v1.0.1 uses three connections:

Layer Purpose Database
SOURCE Where report SQL runs (analytics data) PostgreSQL (appstats)
CACHE Cached report tables (paging/filtering) ManticoreSearch
CONFIG Engine metadata (sockets/meta/wrenches) PostgreSQL (appapi)

Why this topology?

Key goal: even if analytics systems are overloaded or down, the main application remains operational.


Diagram

Documentation

Current docs (v1.0.1) • Architecture: documentation/01-architecture.md • DB topology: documentation/02-database-topology.md • Creating reports: documentation/03-creating-reports.md • Materialized views: documentation/04-materialized-views.md • Caching (Manticore): documentation/05-caching-and-manticore.md • Failure isolation: documentation/06-failure-isolation.md • Deployment & config: documentation/07-deployment-and-config.md • Troubleshooting: documentation/08-troubleshooting.md

Legacy docs (pre-1.0.1)

If you see references in older blog posts or forks, these legacy doc names map to the new ones: • documentation/Architecture.md → documentation/01-architecture.md • documentation/ControlCaching.md → documentation/05-caching-and-manticore.md • documentation/ConfigFile.md → documentation/07-deployment-and-config.md • documentation/Troubleshooting.md → documentation/08-troubleshooting.md

Quick Start (Production TopIQ-style)

This is the recommended production setup for high-load LMS analytics: • SOURCE: PostgreSQL appstats (analytics + materialized views) • CACHE: ManticoreSearch manticore (report cache tables) • CONFIG: PostgreSQL appapi via quickrep_config connection (meta/sockets/wrenches)

1) Install

2) Configure DB connections

In your Laravel app (config/database.php) define: • appstats (pgsql) — analytics DB • manticore (mysql) — manticore mysql-protocol endpoint • quickrep_config (pgsql) — points to your main app DB (appapi), with emulate prepares

Example (quickrep_config only):

3) Set env vars

4) Clear config cache

5) Run migrations for meta/sockets

6) Create your first report

Open: • /Quickrep/YourNewReportName • or API endpoint: /api/Quickrep/YourNewReportName?...

Prerequisites • PHP >= 8.0 recommended • Laravel >= 9.x recommended • PostgreSQL for SOURCE (analytics) • PostgreSQL for CONFIG (main app DB) • ManticoreSearch for CACHE

Installation (General)

Note: In v1.0.1 topology, quickrep:install is mainly scaffolding. You should configure the three connections explicitly.

Routes

You should see routes similar to:

Example patterns: • Quickrep/{report_key} • QuickrepCard/{report_key} • QuickrepTree/{report_key} • QuickrepGraph/{report_key} • api/Quickrep/{report_key} • api/Quickrep/{report_key}/Summary • api/Quickrep/{report_key}/Download

Configuration (v1.0.1)

Edit config/quickrep.php.

Required connections

•   QUICKREP_SOURCE_DB_CONNECTION — where report SQL runs (PostgreSQL analytics)
•   QUICKREP_CACHE_DB_CONNECTION — where cache tables live (Manticore)
•   QUICKREP_CONFIG_DB_CONNECTION — where meta/sockets/wrenches are stored (PostgreSQL main app DB)

PgBouncer compatibility

If you use PgBouncer (transaction pooling) or any environment that resets prepared statements, CONFIG DB should enable:

Make Your First Report

Create a report class:

Open: • /Quickrep/YourNewReportName • or API endpoint: /api/Quickrep/YourNewReportName?...

Writing Reports

GetSQL()

GetSQL() is the core of a report. It may return: • string • array • QueryBuilder • EloquentBuilder • array of the above

Builder example:

Inputs

Use request inputs: • getInput($key) — GET/POST/JSON input • URL segments: • $this->getCode() • $this->getParameters()

Caching Model (v1.0.1)

In v1.0.1, caching is not just an optimization — it is a core part of performance isolation. • SQL executes in SOURCE (PostgreSQL) • Results are stored in CACHE (Manticore) • UI queries (filter/paging/sort) run against CACHE

This prevents the browser/UI from generating heavy workload on PostgreSQL.

Failure Isolation

If SOURCE (appstats) or CACHE (manticore) is unavailable, the API endpoints respond with HTTP 503:

This ensures analytics failures do not crash the main application.

Materialized Views (Recommended)

For predictable performance, build reports on top of materialized views: • precompute expensive joins/aggregations • refresh asynchronously (cron/queue) • avoid heavy computations during report execution

See: documentation/04-materialized-views.md

Sockets / Wrenches (Advanced Feature)

Quickrep supports a “socket/wrench” concept for dynamic parameterized reports:

In v1.0.1, sockets/wrenches live in CONFIG DB (PostgreSQL / appapi). Migrations create: • quickrep_socket • quickrep_socketsource • quickrep_socket_user • quickrep_wrench • quickrep_meta

This allows interactive parameter selection in reports without hardcoding options.

Updating Quickrep

In your project root:

If you use view packages like quickrepbladetabular, follow their upgrade notes.

Uninstall

Troubleshooting

See: documentation/08-troubleshooting.md

Common issues: • prepared statement does not exist → enable PDO::ATTR_EMULATE_PREPARES on CONFIG DB connection • syntax error near "\”` → ensure cache connection is Manticore (MySQL protocol) • report hangs during refresh → use REFRESH MATERIALIZED VIEW CONCURRENTLY

License

MIT (see LICENSE file if present).

Why "Quickrep"?

Quickrep was developed by Owlookit LLC to make reporting on complex LMS/CMS/claims datasets simpler and faster by focusing on SQL-driven report definitions.


All versions of quickrep with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1.0
doctrine/sql-formatter Version ^1.2
phpoffice/phpspreadsheet Version ^1.29
components/jquery Version ^3.6
moment/moment Version ^2.30
fortawesome/font-awesome Version ^6.5
twbs/bootstrap Version 4.3.1
datatables/datatables Version 1.10.21
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package owlookit/quickrep contains the following files

Loading the files please wait ...