PHPackages                             joacub/zf-joacub-form-annotations - 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. joacub/zf-joacub-form-annotations

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

joacub/zf-joacub-form-annotations
=================================

A data grid ZF2 module

0.0.1(11y ago)0236PHP

Since Feb 11Pushed 9y ago1 watchersCompare

[ Source](https://github.com/joacub/zf-joacub-form-annotations)[ Packagist](https://packagist.org/packages/joacub/zf-joacub-form-annotations)[ Docs](https://github.com/joacub)[ RSS](/packages/joacub-zf-joacub-form-annotations/feed)WikiDiscussions master Synced 1mo ago

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

One of the cool new RAD features introduced in Zend Forms (2.0) is "annotations". It helps you easily create forms for your entities by merely providing annotations/docblock comments. This feature relies on the doctrine common library.. So please make sure you include that dependency in your composer like so:

```
		"require": {
				"php": ">=5.3.3",
				"zendframework/zendframework": "2.*",
				"doctrine/common" : ">=2.1"
			}

```

Note that doctrine annotations and form annotations can work side by side! One of the common concerns regarding using this approach is the performance hit due to the file parsing and regexp matching overhead. This module demonstrates how the problem can be alleviated using a simple file cache.

Usage
-----

[](#usage)

1. Copy the "MnsFormAnnotation" module into your module or vendor directory.
2. Activate the module by adding 'MnsFormAnnotation' to your application.config.php file.
3. A sample route (/form) has been provided for demonstration purposes. Please check the code in IndexController for details.
4. Make sure you create a folder named 'cache' under the 'data' folder.

In order to generate a form, the code to be used (in the controller) is:

```
		$form = $this->getServiceLocator()->get('formGenerator')
				   ->setClass('\MnsFormAnnotation\Entity\User')
				   ->getForm();

```

- 'formGenerator' is the servicename used by the module (Module.php)
- The "setClass()" method is used to indicate the fully qualified name of the entity that contains the form annotations
- The "getForm()" method transparently handles caching (setup using the key named "mns\_cache\_config" in module.config.php) and returns the requested form object
- Note that the module.config.php file also contains a key named "mns\_form\_extra". This is used to append a "submit" button to the end of the form.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

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

4115d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8c5ea80353eb117dbabb0def7d2a43079815acee0d55f690a6476c03e458c203?d=identicon)[joacub](/maintainers/joacub)

---

Top Contributors

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

---

Tags

gridzf2datagridatzf2 crud modulejoacub

### Embed Badge

![Health badge](/badges/joacub-zf-joacub-form-annotations/health.svg)

```
[![Health](https://phpackages.com/badges/joacub-zf-joacub-form-annotations/health.svg)](https://phpackages.com/packages/joacub-zf-joacub-form-annotations)
```

###  Alternatives

[slm/google-analytics

Google Analytics tracking integration for Zend Framework 2

4180.3k](/packages/slm-google-analytics)[tomshaw/electricgrid

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

116.6k](/packages/tomshaw-electricgrid)[pedro-teixeira/grid-bundle

Ajax grid for Symfony2

172.0k](/packages/pedro-teixeira-grid-bundle)

PHPackages © 2026

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