ENDA — Product & Document Catalogue
A catalogue search system for lighting distributors. It ingests BMEcat 2005 / ETIM product data together with the manufacturer's PDF documents and builds a single SQLite database with full-text search on top, served through a small web interface.
- Streaming ETL — the multi-gigabyte XML is parsed with
iterparse, holding one product in memory at a time, so memory use stays flat regardless of file size. - Search that fits the domain — exact matching on article number / EAN plus prefix full-text search over descriptions and series, via two FTS5 external-content indexes with diacritic folding.
- Searches inside the PDFs — documents are indexed page by page and returned as highlighted excerpts, with catalogue-to-product links that open a brochure at the right page.
- Multi-brand and bilingual — a new brand is added by dropping a directory in, with no code changes; German and English product text are both stored behind an EN/DE switch.
- Runs in production — deployed on AlmaLinux with systemd units, automatic data-refresh timers and HTTPS through Caddy, plus per-person accounts and role management.