PHPackages                             genesisaplicaciones/genesis-php-tools - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. genesisaplicaciones/genesis-php-tools

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

genesisaplicaciones/genesis-php-tools
=====================================

Some libraries and helper functions commonly used by the Genesis Aplicaciones developer team across different solutions.

1.3.12(4y ago)0122MITPHPPHP ^7.1

Since Aug 14Pushed 4y ago1 watchersCompare

[ Source](https://github.com/GenesisAplicaciones/GenesisPhpTools)[ Packagist](https://packagist.org/packages/genesisaplicaciones/genesis-php-tools)[ Docs](https://github.com/GenesisAplicaciones/GenesisPhpTools)[ RSS](/packages/genesisaplicaciones-genesis-php-tools/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (2)Dependencies (2)Versions (22)Used By (0)

Genesis PHP Tools
=================

[](#genesis-php-tools)

Some libraries and helper functions commonly used by the Genesis Aplicaciones developer team across different solutions.

Libraries included
==================

[](#libraries-included)

SpreadSheetTemplate.php
-----------------------

[](#spreadsheettemplatephp)

Quicky generate a spreadsheet document based on a common template with minimun configuration, but allowing you to customize several parameters, like:

- owner\_info
- logo
- logo\_wide
- logo\_square
- solution\_name
- title
- subject
- category
- last\_modified\_by
- table\_color
- color\_title\_bg
- color\_title\_font
- color\_headers\_bg
- color\_table\_border
- memory\_limit

For the table data, you can pass the raw data array from a database query and especify excluded columns and edit the names by overwriting all or only renaming the ones needed. Also, when generating the file you cant force the download directly or you can return the bin file and do what you want whith it (like a base64\_encode).

### Examples

[](#examples)

Minimal effort setup:

```
// this way you get the report with the same data you pass and force the download
$template = new GenesisPhpTools\SpreadSheetTemplate(); // Initialice the class with the default configuration
$template->generate_file(
    "usuarios", //the report name
    $datos_reporte, //report data
    true, // force the download of the file
);
```

Result: [![](assets%5Cexample_minimal.png)](assets%5Cexample_minimal.png)

Advanced usage:

```
// this way you get the report with excluded and renamed columns, a logo, custom color and correct file metadata

$doc_config = [
    'owner_info' => $this->session->razon_social,
    'logo' => 'assets/panel/img/logo.png',
    'solution_name' => 'TimbraXML',
    'table_color' => 'FF0C77C2'
];

$columns_config = [
    "excluded" => ['id_cuenta', 'id_usuario'] ,
    "renamed" => [
        "control_access" => "Acceso al portal",
        "panel_access" => "Nivel de acceso",
        "vista" => "Tipo de facturacion"
    ]
];

$template = new GenesisPhpTools\SpreadSheetTemplate($doc_config); // Initialice the class with the default configuration
$my_file = $template->generate_file(
    "usuarios", //the report name
    $datos_reporte, //report data
    false, // don't force the download of the file, so you can manipulate it
    $columns_config,
);

return_data(base64_encode($my_file)); // return the data like you want, in this case in base64 inside a json response
```

Result: [![](assets%5Cexample_advanced.png)](assets%5Cexample_advanced.png)

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 82.6% 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 ~16 days

Recently: every ~27 days

Total

21

Last Release

1813d ago

Major Versions

0.6.1 → 1.0.02020-08-14

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/69529449?v=4)[Génesis Aplicaciones](/maintainers/genesisaplicaciones)[@GenesisAplicaciones](https://github.com/GenesisAplicaciones)

---

Top Contributors

[![gggiovanny](https://avatars.githubusercontent.com/u/30027326?v=4)](https://github.com/gggiovanny "gggiovanny (19 commits)")[![amilcarsosae](https://avatars.githubusercontent.com/u/4326475?v=4)](https://github.com/amilcarsosae "amilcarsosae (4 commits)")

---

Tags

phphelperstoolsToolboxlibrariesreports

### Embed Badge

![Health badge](/badges/genesisaplicaciones-genesis-php-tools/health.svg)

```
[![Health](https://phpackages.com/badges/genesisaplicaciones-genesis-php-tools/health.svg)](https://phpackages.com/packages/genesisaplicaciones-genesis-php-tools)
```

###  Alternatives

[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k43](/packages/civicrm-civicrm-core)[solspace/craft-freeform

The most flexible and user-friendly form building plugin!

54681.3k18](/packages/solspace-craft-freeform)[tomshaw/electricgrid

A feature-rich Livewire package designed for projects that require dynamic, interactive data tables.

119.4k](/packages/tomshaw-electricgrid)

PHPackages © 2026

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