An open API service indexing awesome lists of open source software.

https://github.com/yash1th-yerra/simple-search-engine-tfidf

A Flask-based Search Engine that allows users to search for songs using lyrics snippets! This project demonstrates how to implement a basic text search functionality with TF-IDF Vectorization and Cosine Similarity for ranking results.
https://github.com/yash1th-yerra/simple-search-engine-tfidf

search-engine tf-idf-vectorizer vector-search-engine

Last synced: 4 months ago
JSON representation

A Flask-based Search Engine that allows users to search for songs using lyrics snippets! This project demonstrates how to implement a basic text search functionality with TF-IDF Vectorization and Cosine Similarity for ranking results.

Awesome Lists containing this project

README

        

🎵 Simple Search Engine for Songs

A Flask-based Search Engine that allows users to search for songs using lyrics snippets! This project demonstrates how to implement a basic text search functionality with TF-IDF Vectorization and Cosine Similarity for ranking results.

🚀 Features

🔍 Search Functionality: Enter a phrase or a snippet of lyrics to find matching songs.
📊 TF-IDF Vectorization: Efficient text representation for accurate matching.
🧠 Cosine Similarity: Ranks search results based on relevance.
🎨 User-Friendly Interface: A simple and responsive web design built with Flask and CSS.
🌐 Deployable: Ready for deployment on platforms like Render, Railway, or Heroku.

🛠️ Technologies Used

- Backend: Flask (Python)
- Text Processing: Scikit-learn (TF-IDF and Cosine Similarity)
- Frontend: HTML5, CSS3
- Deployment: Render

📝 How It Works

- The dataset (songdata.csv) is loaded and preprocessed.
- Lyrics are transformed into vectors using TF-IDF.
- User queries are vectorized and compared with the dataset using Cosine Similarity.
- Results are ranked by relevance and displayed to the user.

📂 Project Structure

.
├── app.py # Main Flask application
├── templates/
│ ├── layout.html # Base HTML layout
│ ├── search.html # Search page template
├── static/
│ ├── style.css # CSS for styling
├── songdata.csv # Dataset of songs and lyrics
├── requirements.txt # Python dependencies
└── Procfile # Deployment configuration (for Render/Heroku)

🚀 Getting Started
1️⃣ Clone the Repository

git clone https://github.com/your-username/song-search-engine.git
cd song-search-engine

2️⃣ Install Dependencies

pip install -r requirements.txt

3️⃣ Run the Application

python app.py

Visit http://127.0.0.1:5000 in your browser to start searching!

📖 Future Enhancements

- Add autocomplete for the search bar.
- Integrate a database for faster indexing and querying.
- Implement advanced ranking algorithms for more accurate results.
- Enhance the UI with more modern styles and animations.

- Live Demo : https://simple-search-engine-tfidf.onrender.com/

🤝 Contributions

Contributions, issues, and feature requests are welcome! Feel free to fork this repository and submit a pull request.
🛡️ License

This project is licensed under the MIT License.