You are browsing as a guest. Sign up (or log in) to start making projects!

rushabh69

@rushabh69

Joined August 23rd, 2026

  • 4Devlogs
  • 2Projects
  • 1Ships
  • 0Votes
Open comments for this post

6h 55m 45s logged

Building PaperMind — a local RAG study assistant. Backend’s coming together: PDF ingestion with page-accurate parsing + heading detection, structure-aware chunking, and hybrid retrieval (FAISS embeddings + BM25, fused with RRF and a cross-encoder re-rank). All persisted in SQLite. Next up: the Q&A + quiz generation and the UI. 🚀

0
0
15
Ship Pending review

CineMatch is a movie recommendation engine I built on the MovieLens dataset (~100K ratings) — it compares five approaches (popularity baseline, user-based and item-based collaborative filtering, SVD matrix factorization, and a content+CF hybrid), gives cited “because you liked X, Y, Z” explanations, handles brand-new users with a cold-start fallback, has a similar-movies search, and shows a live model-comparison dashboard, all deployed on Streamlit with poster art from TMDB. The challenging parts were both ML and infra: my neighborhood models kept top-ranking obscure movies that one person rated 5 stars so precision was ~0.01 until I added support-based shrinkage (jumped to ~0.13), and I learned the hard way that the best-RMSE model isn’t the best recommender — SVD won on RMSE but the hybrid ranks best — plus the posters worked locally but the deploy fought me with SSL cert errors and random TLS connection resets that I fixed with certifi and a curl fallback. I’m proud that it’s not just “a recommender” but actually evaluates models honestly with real metrics (RMSE, MAE, precision@k, recall@k), explains its picks, handles cold start two ways, and is shipped live end-to-end with a clean UI. To test it, just open the live app at https://cinematch-c7yuqnyee7sy2f3im28wbv.streamlit.app/ (no setup) — pick any user ID for personalized recs with explanations, search a title under “Similar Movies” (try “Matrix”), use “New User” to simulate a cold start by picking a few movies you like, and check the “Model Comparison” page to see how the five models stack up; the first load takes a few seconds to warm up.

  • 3 devlogs
  • 21h
Try project → See source code →
Open comments for this post

5h 12m 17s logged

wrapped up cinematch today. spent way too long fighting the movie posters lol - added tmdb api to show poster art instead of plain tables, worked instantly on my main machine but the vm kept throwing ssl cert errors and then random connection resets (10054). turned out the vm’s python couldnt verify https certs so fixed that with certifi, and then some antivirus/firewall thing was resetting python’s tls connections while curl worked fine, so i made it fall back to curl when urllib fails. finally got posters loading. also cleaned up so it gracefully shows placeholder cards if theres no api key. then deployed the whole thing to streamlit community cloud (free) so theres an actual live demo link now, added the tmdb key as a secret so its not exposed. so cinematch is officially done - 5 recommendation models compared, cited “because you liked x,y,z” explanations, cold start handling, similar movies, model comparison dashboard, poster art, tests passing, readme + report written, and deployed live. pretty happy with how it turned out.

0
0
80
Open comments for this post

7h 8m 58s logged

back on cinematch today, mostly turning the models into something you can actually use. wrapped everything behind a facade class so theres one clean api (get_recommendations, get_similar_movies, cold start fold-in, explanations) instead of poking at each model directly. then built a cli with subcommands - recommend, similar, search, newuser, compare etc - which made testing way faster. after that did the streamlit app, four tabs: personalized recs with the “because you liked x,y,z” reasons, a similar-movies search, a new-user cold start page, and a model comparison page with the rmse/precision charts. kinda satisfying seeing the numbers from the terminal turn into an actual clickable ui. small stuff slowed me down (forgot to activate the venv once, a typo’d argparse arg) but nothing major. everything pushed to github. next up is tests + cleaning the readme, then trying to deploy the streamlit app.

0
0
34
Open comments for this post

9h 7m 1s logged

spent basically the whole day on cinematch, my movie recommender built on the movielens data. got the data pipeline done first (cleaning, filtering out users/movies with under 5 ratings, per-user 80/20 split) then built 5 models to actually compare instead of just picking one - popularity baseline, user-based CF, item-based CF, SVD with the surprise library, and a hybrid mixing collaborative + content. most annoying part was my neighborhood models kept recommending random obscure movies that one person happened to rate 5 stars, precision was like 0.01. added some shrinkage so thinly-backed picks get pushed down and it jumped to ~0.13. also kind of learned the hard way that best RMSE doesnt mean best recommendations - SVD won on RMSE but the hybrid actually ranks better. threw in cold-start handling, a similar-movies feature and “because you liked x, y, z” explanations, then wrapped it all in a streamlit app. also fixed a dumb 248mb cache bug (dense matrices that shouldve been sparse, now ~34mb). 11 tests passing. pretty happy with it, gonna clean up the readme and try deploying tomorrow.

0
0
56

Followers

Loading…