otter banner

otter

10 devlogs
28h 22m 48s

Search engine for all Hack Club projects!

This project uses AI

prototyping, code completion and optimizing SQL queries

Demo Repository

Loading README...

miggy

Shipped this project!

I built a search engine for Hack Club projects! Text embedding models are weird and way heavier than I expected but after playing around with the scoring algorithm and FTS (Full Text Search), I think it’s now working pretty well :D

miggy

Cool stuff/QOL update tradeoffer

  • Added OG tags! You can now share projects in the Slack with pretty embeds :D
  • Added markdown rendering to the descriptions
  • Fought against Cloudflare pages for an hour trying to figure out why everything broke (it was the HTML sanitization library sob-wx)
  • Improved the /project/[id] page and tweaked the image display

Changelog

Attachment
Attachment
0
Neon

Tagged your project as well cooked!

🔥 Neon marked your project as well cooked! As a prize for your nicely cooked project, look out for a bonus prize in the mail :)

miggy

More changes!!! huzzah

  • Added username and project name guessing based on the repository URL
  • Made search faster by over 10x!!
  • Made the site responsive on mobile dance
  • Made NULLs appear last in queries
  • Added pagination to the search endpoint
  • Added query timings
  • Improved logging and fixed assorted bugs/glitches pullrequest

Changelog

Attachment
Attachment
0
miggy

It’s devlog o’clock!! dcolonn

  • Added user searching! You can now look up projects from a user by typing in user:username yayayayayay
  • Improved username and project name guessing based on the code URL
  • Improved the look of the big projects table (also added more fields to it)
  • Added a way to share search queries using URL parameters

Changelog

Attachment
Attachment
Attachment
0
miggy

Refactored the old temporary explorer in SvelteKit! spinny-cat

Featuring:

  • Filtering by any field
  • Filtering using multiple operations for each field
  • Pagination with variable page size
  • View sharing

Changelog explodes

Attachment
0
miggy

A ton of stuff again!! yay-anya

  • Added documentation using utoipa and Scalar
  • Added observability using OpenTelemetry
  • Added true hours syncing using Airbridge
  • Added auto rebuilding
  • Added a temporary frontend
  • Improved the request retry logic

Changelog eyes_shaking

Attachment
0
miggy

I KEEP FORGETTING TO MAKE DEVLOGS sob-wx

So uh hi, big devlog time
(still no decent images because the frontend isn’t done why)

  • Got mixed local/API embedding working with fallback handling
  • Sped up the data ingestion pipeline/job with some query optimizations and by separating embeddings into their own table (turns out having 1024-dimensional vectors in every row makes insertion/updates slow)
  • Added embedding caching to reduce load/AI API usage
  • Added full text search
  • Added an image endpoint (gets the updated image URL from the DB, this is needed because Airtable image URLs expire very fast)

Changelog

Attachment
Attachment
0
miggy

Set up a base for the project and started working on data embedding.

Current progress:

  • Data fetching
  • Embedding (local/API)
  • Search API
  • Frontend
Attachment
0