// the find
glpi-project/glpi
GLPI is a Free Asset and IT Management Software package, Data center management, ITIL Service Desk, licenses tracking and software auditing.
GLPI is a mature, full-featured ITSM/ITAM platform written in PHP — think tickets, asset inventory, DCIM, license tracking, and ITIL processes in one package. It's been around since the early 2000s and is widely deployed in European enterprises and public institutions as a free alternative to ServiceNow or Jira Service Management.
- Feature breadth is genuinely impressive for open source: full ITIL ticket lifecycle, DCIM rack management with drag-and-drop, software license tracking, and impact analysis all ship in core without requiring paid add-ons.
- Active CI pipeline with functional, LDAP, IMAP, and e2e test suites, plus PHPStan static analysis with a maintained baseline — unusual discipline for a project this age and size.
- Plugin ecosystem is large and well-documented; the architecture separates plugin hooks cleanly enough that third-party extensions don't require patching core.
- Docker dev environment and devcontainer config lower the barrier to getting a local instance running, and update paths from 0.85.5 and 9.5 are explicitly tested in CI, which matters for long-running deployments.
- The codebase is a PHP procedural-era project that has been incrementally modernized — the ajax/ directory alone has 90+ individual PHP files handling endpoints, and mixing of presentation, business logic, and data access is common throughout, making it hard to trace or extend behavior safely.
- PHPStan baselines have hundreds of suppressed issues; the baseline files are explicitly committed and maintained rather than resolved, so type safety is aspirational in large parts of the code.
- UI is functional but dated — it's a heavily customized jQuery/Select2/TinyMCE stack with some Vue sprinkled in. Anyone expecting a modern SPA-style interface will be disappointed; the UX complexity also makes onboarding end users without training difficult.
- The REST API (apirest.md) is documented but limited compared to the GUI's capabilities; complex operations like bulk asset imports or full ticket workflow automation often require direct DB access or plugin development, which creates a tight coupling to internal data structures.