I have a library of more than 7,000 DXF drawings that I need to search quickly and intelligently. The tool must let me type in a few descriptive words and, when needed, drop in a reference sketch or existing DXF so it can return the closest visual matches alongside any keyword hits. Accuracy and speed matter more than interface polish. Here is what I need the finished solution to do: • Automatically index every DXF in the collection and keep the index up-to-date when new files are added. • Accept two kinds of queries: text keywords pulled from layer names, block names or any other embedded text, and a geometry-based query that compares the shape of an uploaded sketch/DXF against the library. • Return the top-ranked matches with thumbnails, file path and similarity score so I can open them in my native CAD program. • Run locally on Windows without requiring an expensive enterprise license; open-source components such as OpenCascade, Python-OCC, trimesh, or a lightweight C++ library are fine as long as they are bundled cleanly. • Provide clear instructions for installing dependencies and rebuilding the index. Acceptance criteria 1. A new DXF dropped into the library is picked up and searchable after re-indexing. 2. Keyword-only queries produce relevant results within a second or two. 3. A geometry search using a test sketch returns at least the five visually closest drawings in the top ten results. 4. All code is handed over, fully commented, with a short README so another engineer can maintain the tool. If you’ve built shape-search or CAD-indexing systems before, let me know what libraries you used and how you would approach the geometry matching step.