Welcome to the source code repository of Quote Finder. This project leverages natural language processing (NLP) techniques to provide a a pretty normal looking keyword search experience.
The Quote Finder project is organized into three primary directories, each serving a unique purpose within the application architecture:
- frontend/ Contains the Vite-React application, implementing the user interface and interaction layer.
- python/ Houses data and model preparation scripts, including a notable Jupyter Notebook for embedding quotes and integration with Pinecone.
- src/ The Rust backend, built with Axum to provide RESTful services, including the front-end serving and quote searching functionality.
- peridotml/candle A fork of Hugging Face's candle library with some extra code that I wrote to implement a SPLADE model.
- Backend Axum, Pinecone
- ML SPLADE, Candle, Safetensors
- Frontend Vite, React, Zustand, Mantine
- Deployment Shuttle
Run the Rust backend using Cargo:
cargo shuttle run
Navigate to the frontend directory and start the development server:
cd frontend
npm run dev
To build and deploy the application, use the provided Make command:
make build-and-deploy