elma/devexpressbundle
Symfony bundle that bridges DevExpress JS widgets with Doctrine, currently supporting dxDataGrid. It parses DevExpress load options and applies filtering, sorting, and pagination to Doctrine queries via simple column-to-field mapping. Unofficial and a work in progress; contributions welcome.
dxDataGrid loadOptions (paging, sorting, filtering) and translates column maps into Doctrine QueryBuilder calls. It informs a specific decision—"do we buy DevExpress's server-side integration, adopt an OSS bridge, or write our own ~200-line parser?"—rather than a platform-wide one.app/AppKernel.php, BilendiDevExpressBundle). Any adoption decision must exclude Laravel-first product lines; it only maps to Symfony + Doctrine teams.Consider it when:
dxDataGrid—and the backend is Symfony with Doctrine ORM.loadOptions parsing (column header → Doctrine field mapping, sort/filter/page translation) to reduce design risk in a spike.Look elsewhere when:
dxDataGrid (e.g., dxChart, dxPivotGrid, other DevExpress widgets).To executives: A small, MIT-licensed, unmaintained open-source adapter that connects DevExpress JavaScript data grids to a Doctrine backend. It is useful as a reference implementation for one specific integration, not as a strategic dependency. Recommendation: do not adopt as a dependency; if the integration is on the roadmap, allocate a one-to-two-day engineering spike to fork the query-parsing logic and own it. Cost is negligible; risk of depending on an abandoned 4-star package is not worth the exposure.
To engineering: Read the SearchQueryParser and column-map logic—it is a compact, honest example of translating DevExpress loadOptions into Doctrine queries. Treat it as a starting point to vendor, not a library to composer require. Two caveats to confirm before investing: (1) it is Symfony, not Laravel; (2) it covers only dxDataGrid and is explicitly incomplete. If the grid surface grows beyond that, plan to extend or replace the parser rather than wait on upstream.
Bottom line: High conceptual relevance, low adoption signal, zero maintenance. Score the idea as worth a spike; score the package as archive-worthy reference material.
How can I help you explore Laravel packages today?