Extracts information about PHP class' properties using metadata of popular sources
2.2k
Stars
13
Forks
0
Open issues
30
Contributors
AI Analysis
The PropertyInfo component extracts metadata about PHP class properties from multiple sources (Doctrine, PHPDoc, validators, etc.), enabling frameworks and libraries to introspect class structures programmatically. It is a foundational utility for developers building PHP frameworks, ORM tools, and validation systems that need reliable property type and attribute information. This is a specialized infrastructure component, not a general-purpose library.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Symfony PropertyInfo: metadata extraction for PHP class properties, deeply embedded in framework ecosystem
PropertyInfo is a Symfony component that extracts and provides access to metadata about PHP class properties from multiple sources (type hints, annotations, serializer metadata). It serves as infrastructure for Symfony's serializer, validator, and form systems. Adoption is indirect and largely confined to Symfony ecosystem users; it is not a standalone tool most developers consciously choose, but rather a dependency pulled in through other Symfony components.
Created September 2015 as part of Symfony's modularization effort. Part of the Symfony component suite designed to handle reflection and metadata collection across popular PHP frameworks and libraries. Evolved alongside Symfony's serializer and validator components.
Star count has grown modestly from inception (2,229 stars as of 2026-07) but reflects the overall Symfony ecosystem adoption rather than independent growth. No recent acceleration visible. Growth is coupled to Symfony framework adoption and the broader shift toward stricter PHP typing (7.4+ union types, property promotion). Likely benefits from PHP 8+ adoption cycles.
Adoption not directly verified from README. However, PropertyInfo is a dependency of symfony/serializer, symfony/validator, and symfony/form — all widely adopted Symfony components. Real-world usage likely exists wherever these components are used, but is largely transparent to end users. No explicit case studies or deployment documentation in README.
Based on README, appears to follow a chain-of-responsibility or extractor pattern: multiple extractors (type, description, access, etc.) query different metadata sources (reflection, annotations, serializer, doctrine). Likely modular, allowing composition of different information sources. Exact implementation not visible from README alone.
Not documented in README. Standard Symfony component, likely covered by test suite in main symfony/symfony repository, but specifics unknown.
Last push 2026-07-05 (current date 2026-07-07), indicating active maintenance within 2 days of analysis date. Zero stars gained in last 7 days suggests stable, non-trending status typical of mature infrastructure. Part of monorepo managed centrally; maintenance occurs as part of Symfony release cycles rather than independent urgency.
ADOPT IF: you are building Symfony applications and need to programmatically extract property metadata for serialization, validation, or form generation. AVOID IF: you need a standalone metadata extraction library outside Symfony ecosystem or are working with non-PHP codebases. MONITOR IF: you are considering it as a core dependency outside Symfony — integration cost may outweigh benefit; use native reflection or framework-specific alternatives instead.
Independent dimensions
Mainstream potential
2/10
Technical importance
6/10
Adoption evidence
3/10
- Tight coupling to Symfony ecosystem means adoption and maintenance tied to Symfony's decisions; breaking changes in Symfony could cascade.
- README mentions component is 'looking for a backer,' suggesting potential resource constraints or unclear long-term investment.
- Metadata extraction from multiple sources (annotations, attributes, reflection) may have inconsistent behavior; handling priority among sources not clearly documented in README.
- Adoption outside Symfony appears limited; standalone use outside Symfony context likely faces friction due to implicit dependencies.
- Performance implications of multi-source metadata extraction not discussed; may be negligible but unknown at scale.
Will continue as stable infrastructure component within Symfony ecosystem. Unlikely to gain adoption outside Symfony. May see modest growth aligned with PHP 8+ adoption and stricter typing, but no major inflection expected. Maintenance will remain steady but not accelerating.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- PHP
- License
- MIT
- Last updated
- 5d ago
- Created
- 131mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Top contributors
Similar repos
symfony/property-access
The PropertyAccess component provides a unified API to read and write object...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
2.2k | — | PHP | 8/10 | 5d ago |
|
|
2.8k | — | PHP | 8/10 | 1mo ago |
|
|
4.3k | — | PHP | 8/10 | 2w ago |
|
|
4.6k | — | PHP | 8/10 | 2w ago |
|
|
8.4k | — | PHP | 8/10 | 2w ago |
|
|
2.3k | — | PHP | 8/10 | 1d ago |
Closely related sibling component (2,823 stars). PropertyAccess reads/writes property values; PropertyInfo reads metadata about those properties. Often used together. PropertyAccess has higher star count, likely due to more direct developer interaction.
Doctrine's entity metadata system serves similar purpose for ORM entities. Competes in the ORM-specific domain; PropertyInfo is more general-purpose across any PHP class.
PHP-DI's reflection utilities perform overlapping metadata extraction. PropertyInfo is tighter integration with Symfony ecosystem.
Laminas framework equivalent for metadata extraction. Different ecosystem, similar domain, lower adoption.
Native PHP ReflectionProperty and related classes provide raw reflection. PropertyInfo adds convenience layer and multi-source aggregation.