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

InSave

  • 5 Devlogs
  • 8 Total hours

I save Instagram reels and then completely forget they exist. That's the whole problem. I'll save a reel about some Claude trick, feel productive, and never see it again. It rots in a list. The save button is where good intentions go to die. So I'm building the thing that drags them back out. Not another bookmark folder, those already exist and they don't work, because nothing ever nudges you to return. InSave's actual job is the reminder, not the saving. It pulls the few reels that mattered back in front of you instead of letting them sink. The catch I had to design around: there's no way to read your Instagram saves through any official API. Never has been. So InSave works differently. You share a reel into it (one tap from Instagram's share sheet), and later you can import your whole backlog from Instagram's own data export. Capture is the easy reflex. The smart part, deciding what's worth reminding you about, comes after.

Open comments for this post

1h 24m 39s logged

The problem that’s haunted this project for weeks, on iPhone, the app and the browser are treated as DIFFERENT sandboxes, so a reel you saved in one never showed up in the other. Same underlying issue everywhere, InSave never knew who you were. Every new device created a new account which is annoying to say the least
Fixed it properly: optional sign-in. Don’t want an account? Everything still works, save, get reminded, no login wall. Want your stuff in one place across your phone and laptop? Sign in once, and everything you saved, no matter which device or browser, merges into one library. Signed in on my iPhone and my Android and watched them become the same library. That merge, taking piles of saved reels from three different accounts and combining them into one without losing or duplicating a single thing, was the hardest thing I’ve built on this whole project.
Then it went live and immediately broke, which was its own lesson. Sign-in did nothing on every phone. Chased it down: the button silently failed because the server was erroring, because a piece of setup I was supposed to do by hand on the Google AUTH client got skipped when the code auto-shipped itself. The code deployed fine. Fixed the setup, and sign-in flipped from broken to working on both iPhone and Android.
Two bonus things shipped while I was in there: reminders are now a one reel at a time revisit queue (see the reel, rewatch it, keep it in rotation, or let it go) instead of a flat list. And import got way better, turns out Instagram’s export quietly includes your actual collections, so now importing recreates them faithfully instead of dumping everything into one pile.
258 tests green. Live on real servers. Verified on real iPhone and real Android. The wall that’s blocked iPhone for weeks is down. Still honest about what’s left, There is a timezone issue, reminders still fire on the wrong clock for anyone outside my timezone. Tired, but it works.

0
0
2
Open comments for this post

2h 38m 38s logged

Well there’s good news and bad news. Good news: I set a reminder, walked away, and my Android phone buzzed at exactly the right time, app fully closed. The whole point of InSave, working on real hardware, not in a test. After weeks of “it passes 198 tests,” watching it actually go off in my hand hit different.
iPhones refuse to cooperate tho, I built the iPhone capture so you share a reel, tap a shortcut, it saves. It did save. Reel captured and everything looked fine. Except it wasnt. Turns out on iPhone, the website you open from a link and the app you installed to your home screen are treated as two completely separate things with separate memories. The shortcut saved my reel into one; my reminders live in the other.
Looks like I have to do the hard part now InSave never had logins. Every phone, every browser, quietly invented its own anonymous identity, and they never talked. It worked fine when I only tested on one device. The moment I used two, like in the case for Iphone where 1 device shows 2 (curse you apple). My own database is sitting here with three different “me”s in it. The main bug
So the next build is the one I kept putting off because it felt boring: actual accounts. One login, one library, everything in one place no matter which phone or app you opened. It’s the thing that makes iPhone actually work, and the thing that means you never lose your reels switching phones.
Where it stands: 198 tests green, live on real servers, Android reminders confirmed firing on a real phone. iPhone capture works mechanically but needs accounts to be useful.

0
0
1
Open comments for this post

2h 18m 15s logged

Devlog 4: InSave now remembers for you, even when it’s closed
The whole point of InSave in one line: the reel you saved and forgot comes back to you. Built it in 3 slices.
The brain: wakes on a timer, picks what’s worth nudging you about. Important reels come back sooner and push harder. Junk you keep ignoring quietly backs off, so it never becomes the app you mute.
The push: that nudge lands as a real notification with InSave fully closed.
The action: done / snooze / open the reel, straight from the notification.
Proudest bit is invisible: the phone and the server write to totally separate parts of each reel, so they can never fight. That’s why deleting the app or switching phones brings your reels back instead of losing them. The scariest problem in the project.
Honest bug I wrote down instead of hiding: snooze a reel and it can still pop up early. On the fix list.
117 tests, all green. Full loop closed: save → tag → remind → act.
Next: living with it on my own phone for a few weeks. Tests work but they can’t tell me if my app is too annoying and if every couple days feels right. Only real use can. Also the frontend, eesh it pains me gotta get to work on that

0
0
4
Open comments for this post

47m 45s logged

This is the part I think actually makes InSave different, so I wanted it to feel good. The problem: everyone’s got a graveyard of saved reels they’ll never see again. InSave lets you dig it up. You hand it the data file Instagram gives you when you ask for your stuff, and it lays out every reel you ever saved so you can grab the few that mattered and let the rest stay buried.

The thing I cared most about: your entire saved history never leaves your phone. It gets read right there on the device, and only the handful you actually choose to keep ever get sent anywhere. The graveyard is yours and it stays yours.

Two bugs nearly slipped through, The syncing code was telling itself “yep, saved that” for reels it had not actually saved, so on a bad day reels could just quietly disappear with no error to tell you. That’s the worst kind of bug, the silent one. Fixed it so it only ticks a reel off once it can actually see it stored. The second was smaller, hit “keep all from this person” twice and you’d get duplicates. Made it so keeping something twice does nothing the second time.

Where it landed: 46 tests passing, up from 20, and a clean build. The whole import-and-triage flow holds together end to end. Still to do on the real phone, feed it an actual Instagram export and confirm it really does make zero calls out to Instagram while you browse, which is the promise the whole privacy story rests on.

One lesson I’m taking, bugs are a pain in the a** when you dont even know where theyre coming from, bugs that lose your data while smiling at you is worse than one that crashes.

More to come!

0
0
2
Open comments for this post

52m 48s logged

First piece, and the most important one, because if saving a reel is even slightly annoying nobody will do it, me included. The goal was brutal: tap share, tap InSave, and you’re already back to scrolling. No screen, no typing, no “tag this now.” Under a second.

The part I’m quietly proud of, it does zero network on the way in. When you share a reel, everything happens right there on your phone (clean up the link, check you haven’t already saved it, write it down) and only later does it quietly sync in the background. Which means it works with no signal at all. Save a reel in a lift with no bars, it just works, and catches up when you’re back online.

The wall was a dumb one that I almost shipped past. The little “saved!” confirmation popup broke when offline, the one moment it most needed to work, because the page it lived on tried to load fresh and couldn’t. Fix was to bake that popup into the part of the app that’s always cached, so it shows up even with no connection. Annoying to find, satisfying to kill.

Where it stands 20 tests, all green, and a clean build. The save-while-offline-then-sync loop holds together. Real on-phone testing (does it actually show up in Instagram’s share menu, does it really feel under a second) is the next thing I have to check on the actual device, not just in tests. But hey thats not the only thing, there’s a lot more work to be done…

0
0
1

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…