Datafari is an open-source enterprise search platform built by the French company France Labs. It is a large, mature product that existed long before I joined it. I am responsible for the search interface, and I work on its latest generation - a second-generation UI, rewritten from the ground up. I started working on Datafari in 2023 and still maintain the project today, shipping new capabilities and fixes.
A complex architecture
Behind the apparent simplicity of a single search box lies a large, carefully considered system. The application's state is split into nearly two dozen independent Redux Toolkit modules, and each one is backed by its own service in the API layer - more than twenty services in total. Search and advanced search, suggestions, facets, source aggregators, saved searches, alerts, favourites, a document basket, result elevation, exports, RAG-based answers, admin tools - each piece is neatly isolated, and together they form a single coherent interface. A system built this way is easy to extend and hard to break: a new feature does not disturb its neighbours, and the boundaries between modules are drawn explicitly.
Advanced search
The heart of the project is search, and it is far from simple. Beyond an ordinary full-text query there is an advanced query builder: exact and excluding conditions, field and date filters, facets, live autocomplete, and aggregation of results from several sources at once. All of this runs on top of an enterprise search engine that connects to dozens of different data stores, and the interface has to present that complexity to the user clearly and quickly, so that powerful search remains understandable.
