Inspiration
every app blocker puts up the exact same wall every time. after about four days your thumb learns to swipe past it without reading. a wall is easy to ignore. a small dog who is visibly disappointed in you is not. so we hired one.
What it does
scrappy guards the apps you ask him to. each time you knock he gets a little less patient: "ah. tiktok." turns into "no." and ends at "i have chewed your shoe. we are both disappointed." you get past him with treats, and you earn those by walking, not by paying. there's no account, no server and nothing leaves your phone.
How we built it
swift 6 and swiftui, on apple's screen time apis. five app extensions do the real work: the shield, the thing that counts your knocks, and the thing that shuts the door again. the dog is drawn in code, so he never needs a server to be disappointed in you. he speaks 36 languages.
Challenges we ran into
the shield can't move. apple gives you one frozen frame with an icon, two labels and two buttons, so we made him feel alive through memory instead of animation. the other big one was closing the door after a treat when the app isn't even running. we ended up locking it three separate ways.
Accomplishments that we're proud of
people actually stop. in our demo week that was 76 almost-scrolls, 93% of them stopped at the door, and 3h 12m given back. the guard works whether you pay or not. and treats can't be bought: he can be kept, but he can't be bribed.
What we learned
guilt from a cartoon beats friction from a pop-up. rules nobody can keep get switched off by tuesday, so he sets your limits at half of what you admit to, not a fifth. and people round their own screen time down, every single time.
What's next for Scrappy: Live more, Scroll Less
a mac version, since he's already sniffing around your desktop. walks with friends. and a new name for the listing (leash) so he stops sharing it with 21 other apps. the dog stays scrappy. he's a very good boy.
Built With
- swiftui
Log in or sign up for Devpost to join the conversation.