PHPackages                             artemeon/officegen - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. artemeon/officegen

ArchivedLibrary[PDF &amp; Document Generation](/categories/documents)

artemeon/officegen
==================

Bridge to generate reports through an external library

v0.1.0(7y ago)012MITPHPPHP &gt;=7.0

Since Sep 12Pushed 2y ago2 watchersCompare

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

READMEChangelogDependencies (2)Versions (2)Used By (0)

Officegen
=========

[](#officegen)

Bridge component which provides a way to generate a report through an external library. I.e. we can use the apache POI library to generate specific reports. The main class of the component is the `Processor` class which you can easily register in your DI container.

```
$reportFile = "my_report.docx";

$generator = new BlackHole();
$processor = new Processor($generator);
$processor->execute("TestReport", $reportFile, ["foo" => "bar"]);
```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

2798d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5c87366e3237b8eed0a163e8a3c14a76418d7a82d34911d205585457a361ea8d?d=identicon)[artemeon](/maintainers/artemeon)

---

Top Contributors

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

---

Tags

excelwordofficegenerationPowerPoint

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/artemeon-officegen/health.svg)

```
[![Health](https://phpackages.com/badges/artemeon-officegen/health.svg)](https://phpackages.com/packages/artemeon-officegen)
```

###  Alternatives

[openspout/openspout

PHP Library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way

1.1k57.6M131](/packages/openspout-openspout)[gotenberg/gotenberg-php

A PHP client for interacting with Gotenberg, a developer-friendly API for converting numerous document formats into PDF files, and more!

3685.2M19](/packages/gotenberg-gotenberg-php)[mnvx/lowrapper

PHP wrapper over LibreOffice converter

129190.5k](/packages/mnvx-lowrapper)[dcat/easy-excel

使用简单实用的语义化接口快速读写Excel文件

155373.4k23](/packages/dcat-easy-excel)[aspose-cloud/aspose-words-cloud

Open, generate, edit, split, merge, compare and convert Word documents. Integrate Cloud API into your solutions to manipulate documents. Convert PDF to Word (DOC, DOCX, ODT, RTF and HTML) and in the opposite direction.

32157.4k](/packages/aspose-cloud-aspose-words-cloud)[bfinlay/laravel-excel-seeder

Seed the database with Laravel using Excel, XLSX, XLS, CSV, ODS, Gnumeric, XML, HTML, SLK files

3944.4k](/packages/bfinlay-laravel-excel-seeder)

PHPackages © 2026

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