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

AuraWatch

  • 8 Devlogs
  • 21 Total hours

AuraWatch — a vibe finder for movies, TV, anime, and songs. Pick a format, genres, optional “like these titles,” and a short mood note; it returns a few grounded picks with posters and where-to-watch / listen links.

Ship #5 💀 Cursed

Shipped Group Vibe Rooms. You open a room, share the link, everyone types a vibe, the host hits Calculate — same picks for the whole group.

Also made Match, Rooms, and Lists look and navigate the same, including on phone.

Try it: aurawatch.org/room — make a room, join it in another tab, calculate.

  • 1 devlog
  • 3h
  • 14.94x multiplier
  • 26 Stardust
Try project → See source code →
Open comments for this post

3h 25m 11s logged

Devlog 8 — Group Vibe Rooms

Biggest thing: you can now match with a group, not just yourself.

Flow: host signs in → shares /room/... → guests only need a nickname +
vibe (no account). Host hits Calculate. We merge everyone’s
notes/likes, run one recommend, and save the same cards for everyone
— including where to watch / play. Rooms self-destruct after 24 hours.

The annoying bit: at first anyone could hit Calculate and burn a Gemini
call for the whole room. Calculate is host-only now, and the host’s
filters (region, rating, decade) actually stick on the room instead of
getting dropped.

Also this round:

  • Roblox as its own format
  • Critic scores on cards (TMDB / Rotten Tomatoes-style %)

Try it: aurawatch.org/room

0
0
18
Ship #4

AuraWatch is for when you’ve been scrolling for 20 minutes and still have nothing to watch. You tell it the mood — genres, a decade, titles you already like, or just a sentence about what you’re after — and it gives you a handful of real picks with posters, trailers, and where to stream them. Movies, TV, anime, songs, games, books, manga, and board games.

The hard part is that no single API covers all of that. Gemini is great at taste and terrible at valid JSON, so every format has its own path: songs go through iTunes, games through IGDB, books through Open Library with Google Books as backup, board games through BoardGameGeek’s XML API — which loves replying “202, try again later” instead of a cover. Auth ate a full hour by itself, mostly because Discord treats www.aurawatch.org and aurawatch.org as two completely different websites.

The thing I’m most proud of is that it never shows you a blank pane. No cover? Skeleton, then initials on a gradient. No results? A fallback card with Surprise Me instead of an empty box.

To test it: no login needed. Pick a format, describe a mood, hit Match — or just spam Surprise Me. Sign in with Discord or a username if you want to save picks into a playlist and share the link.

  • 2 devlogs
  • 8h
  • 19.61x multiplier
  • 157 Stardust
Try project → See source code →
Open comments for this post

1h 12m 47s logged

Devlog 7 — One hour, one login button

Swapped the Email field for Username on sign-in (it quietly becomes [email protected] behind the scenes), and the Save to Playlist modal finally opens in the middle of the screen instead of hiding in the bottom-left corner. Then Discord OAuth ate the rest of the hour. “Invalid OAuth2 redirect_uri” three separate times: first the wrong callback path, then www.aurawatch.org vs aurawatch.org — which Discord treats as two completely unrelated sites. Fixed both, felt great, got a 500 instead: my sessions table has an id column my schema file never knew about, so every login worked perfectly right up until it tried to remember you. One missing column, one hour.

Visual: Login page and after login

0
0
10
Open comments for this post

6h 46m 37s logged

Devlog 6 — Tabletop, Amazon, and no more blank panes

Board Games is actually live now. Gemini still names the titles; BoardGameGeek’s XML API does the rest (box art, year, player count). The painful bit: /thing often answers 202 (“come back later”), and search loves burying the real game under fan expansions, so Cards Against Humanity was coming back with no cover. We retry that queue, batch the IDs, and rank exact titles first.

Books were doing the same disappearing-cover trick. Open Library is fine until it isn’t, so covers now fall through to Google Books, then Jikan / AniList for manga. While those images load, cards show a brutalist skeleton instead of a dead square, then fade in.

Games, board games, and books/manga all got a Buy on Amazon button. It follows the region you picked (US .com, UK/Ireland .co.uk, Italy .it, most of Europe .de) so you’re not dumped on the wrong storefront. Affiliate tags are baked in, with the Associates disclaimer in the footer.

Copy Link used to fail silently. It now pops a terminal toast: [SYSTEM]: Link copied to clipboard successfully. Same deal on playlist share. And if a vibe query returns nothing or the request dies, Match doesn’t sit there empty — you get [ERROR]: No vibes match this exact query. plus Surprise Me or Reset Filters.

Visual: board-game → Amazon button on a book/tabletop card → Mobile UI

0
0
14
Ship #3

What did you make?
I built a massive expansion for AuraWatch, turning it into a true routing engine rather than just a generic recommender. I completely overhauled the UI into a clean, light-mode brutalist aesthetic and added full gaming support with precise platform filtering and dynamic store links.

What was challenging?
Wrestling with the IGDB API to get accurate store buttons was a nightmare, especially for PC games. Writing the logic to properly map Steam, Epic, and GOG links, and creating a strict fallback to official websites when a game like Minecraft isn’t on a main store, took a lot of trial and error. It was also tough figuring out how to add advanced features like “Anti-Vibe” without cluttering the UI, which I solved with a collapsible drawer.

What are you proud of?
I’m really proud of the multi-store routing. If a game is on three different platforms you own, the UI dynamically generates a distinct button for every single storefront. I’m also hyped on the new “Anti-Vibe” filter that lets you strictly exclude elements you hate, and the overall terminal-like visual overhaul.

What should people know so they can test your project?
Switch to the Games format and test the new platform dropdown. Enter the specific consoles you own (like PC or Switch), type in a vibe in the Notes, and maybe throw something you hate into the Exclude filter. Check out how it gives you exact, clickable store buttons for the platforms you actually selected!

  • 1 devlog
  • 4h
  • 18.74x multiplier
  • 76 Stardust
Try project → See source code →
Open comments for this post

4h 4m 2s logged

Devlog 5: New brutalist UI and fixing the store links

I just pushed a pretty massive update to AuraWatch. Honestly, the old UI was getting way too cluttered, and the backend routing had some really annoying edge cases I needed to iron out.

Here is what changed:

  • New Look: I completely overhauled the design. Ditched the old layout for a light-mode brutalist vibe—monospace fonts, sharp borders, and orange accents. It feels way cleaner and more like a proper utility now.
  • Actual Platform Filtering: It was driving me crazy that the app might recommend a PC-only game to someone playing on a PS5. I added a strict, searchable platforms dropdown. If you tell it you only have a Switch and a PS4, it completely filters out everything else.
  • Multi-Store Buttons: The API used to just grab one random store link and call it a day. Now, if a game is on three different platforms you searched for, the UI loops through and actually generates a separate button for each one (e.g., [View on PlayStation] and [View on Steam]).
  • The Minecraft Edge Case: PC store links were breaking because games like Minecraft aren’t on Steam or Epic. I wrote a strict fallback into the routing so if it can’t find a standard storefront, it automatically generates a [View on Official Site] button instead of just ghosting you.
  • No More Tag Dumps: The old cards used to dump 20 different store and console tags into one messy block. Now there is just a clean “Playable On” text list, completely separated from the actual buy buttons.

The routing is finally feeling exact. Let me know what you think of the new stuff!

1
0
9
Ship #2

Ship #2: The Final Polish, Stable APIs & Custom Vibe Tuning 🚀

AuraWatch is finally in its most stable and customizable state yet! Over the last few sessions, I’ve completely overhauled how the app handles complex requests and edge cases based on your feedback.

What’s New in this Ship:

  • Rate Limit Resilience: Users noted missing posters for certain shows (like Yellowstone). I implemented API caching and a graceful UI fallback system. Now, if the TMDB or iTunes API rate-limits us, the UI stays beautiful with stylized fallback gradients instead of broken image icons.
  • Match Priority Slider: You are no longer locked into the AI’s default weighting. You can now use a slider to explicitly tell the algorithm to favor your “Notes” (vibe) or the “Similar-to” titles.
  • Smarter Music Routing: The iTunes API was failing on niche artists. I built a workaround that routes queries through Deezer/MusicBrainz to resolve the artist first, then pulls the correct track from Apple’s catalog.
  • Hidden Easter Eggs: If you know, you know (try typing “surron” or “talaria” into the notes).

Thanks to everyone who left feedback! The app is so much better because of it.

  • 3 devlogs
  • 2h
  • 13.81x multiplier
  • 26 Stardust
Try project → See source code →
Open comments for this post

31m 59s logged

Devlog 4# — Posters that survive rate limits

Covers were dying when TMDB/iTunes rate-limited us — blank squares and broken-image icons on match cards. Now a failed or missing poster falls back to a sleek gradient with the title’s initials. Also shipped a lightweight cache (server TTL for TMDB/iTunes + localStorage for like-title search) so repeat queries stop burning the quota. Friction: the CDN images weren’t the problem — we were refetching the same poster paths every match and hitting the wall.

0
0
24
Open comments for this post

1h 8m 38s logged

AuraWatch — song search that actually finds niche tracks (+ a tiny secret)

Song search used to fail hard on queries like “all i want is you rebz” — Apple only returns U2/LAROI covers, never Rebzyyx. Fixed it by detecting title + artist-fragment queries, resolving the artist via Deezer/MusicBrainz, then pulling the real track from their iTunes catalog so the niche hit ranks first. Also shipped Sur Ronster easter eggs: Songs + “Surron”/“Talaria” → only On My Own by Kyle The Hooligan; Movies/TV + “surronster vibe” → his newest YouTube uploads in-app (no Zflix CTA). Friction: iTunes artist search for rebz only finds random “Rebz” artists — prefix expansion was the missing link.

Visual to attach: Then notes surronster vibe → latest Sur Ronster video cards with Play video.

0
0
10
Ship #1

What I made: AuraWatch — a vibe finder for movies, TV, anime, and songs. You pick format/genres, optional “like these” titles, and a short mood note; it returns a few grounded picks with posters and where-to-watch / listen links.

Problem: Picking something to watch (or play) usually means doomscrolling Netflix/Spotify until you give up. AuraWatch turns that into one short decision.

3 QoL improvements:

  1. Vibe + “similar to” in one place — no hopping between lists and search tabs.
  2. Region-aware Where to Watch — so you don’t get hyped for a title you can’t stream.
  3. Songs mode with listen links — same friction fix for music, not just video.

Challenging: Gemini’s JSON was a mess (fences, trailing commas, truncations), so I added repair + key rotation and a local catalog fallback when APIs flake.

Proud of: The dual path (TMDB similar vs Gemini concierge) and that it still works without keys.

How to test: Open https://aura-watching.vercel.app/ → try Desktop + Minimal themes → pick Anime or Songs → add a “like” title and hit Get picks. Check providers/listen links on a result.

Try project → See source code →
Open comments for this post

3h 16m 35s logged

AuraWatch — Devlog #1

Added a dual-path recommender: vibe prompt / genres go through Gemini, and “like this title” goes through TMDB similar — then both get posters + region watch providers.

The painful part wasn’t the AI. It was Gemini’s JSON. Trailing commas, curly quotes, markdown fences mid-object. Spent a chunk writing a repair/parse loop and bumping maxOutputTokens to 3072 after it kept truncating mid-array.

Also shipped songs mode (Gemini → iTunes covers/listen links) and a local catalog fallback so the app still picks something when keys die. UI has two themes now (minimal / desktop)

0
0
5

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…