minulo is an iPhone app that hides Instagram Reels, YouTube Shorts and TikTok's For You feed while your DMs keep working, and hiding them is free; this post explains how it works. It has real limits, and I'd rather you hear them from me first: it can't change the official Instagram or YouTube app, a free block of the official apps lasts up to 2 hours at a time, it's iPhone only on phones (there's a Mac app and Chrome and Safari extensions, but no Android yet), and while it blocks an official app, that app's notifications don't arrive. (I'm Ayumu Kitabayashi, the solo developer of minulo.)
Below: how it works, what's free, and where it falls short.
The problem I was trying to solve
A lot of people can't just delete Instagram. Their class group chat lives there, or their friends only message them there. Screen Time on iPhone can limit the Instagram app, but it limits the whole app, so the group chat goes away with the Reels. Instagram itself has no "messages only" mode for adult accounts.
So the goal was narrow: keep DMs, friends' posts and search, and remove only the endless video feeds.
Part 1: the network's own website, inside a web view
On iPhone, no third-party app can change what another app shows. That rules out "patching" the official Instagram app. What an app can do is show a website.
So minulo opens each network's own website (for example instagram.com) inside the app. You sign in on that site's real sign-in page, so your ID and password go straight to Instagram. minulo never receives them. The login cookies stay in the storage area iOS gives each app, where other apps and I can't read them. The connection to each network is the same one a browser makes. It does not pass through a minulo server.
On top of each page, minulo adds a script that hides the parts you switch off. On Instagram that means the Reels and Explore tabs and suggested posts. On YouTube it's the Shorts shelf on the home screen and the Shorts tab. Search, subscriptions and normal-length videos keep working. You choose what to hide one item at a time.
The script reads the text on screen to spot things like suggested posts, but it doesn't save or send that text. As full pages, the app only opens the 10 supported networks (Instagram, YouTube, TikTok, X, Threads, Facebook, Pinterest, Reddit, LinkedIn and Snapchat) plus the Google and Apple sign-in pages. Embedded frames such as reCAPTCHA checks are allowed so sign-in works.
For people who use Instagram only to talk to friends, there's a stricter setting called "Every tab but DMs". With it on, only DMs and the notifications tab stay. Reels, Explore, the home feed and suggested posts are gone.
The weak point of this approach is that websites change. When a network changes its screens, something that was hidden can come back for a while. The hiding rules are checked automatically every week, and each case is fixed as it's confirmed.
Part 2: Screen Time shields on the official apps
Hiding Reels inside my app does nothing if the real Instagram icon is one tap away. That's where Apple's Screen Time API (Family Controls) comes in.
You pick the official Instagram, YouTube or TikTok app in Apple's own app picker. Apple doesn't hand minulo the names of the apps you picked. It hands over opaque tokens. Apple's documentation puts it this way: "To protect the user's privacy, FamilyActivitySelection holds opaque values that represent categories, applications, and web domains selected by the user." minulo keeps those tokens on the iPhone and passes them back to Screen Time to lock the apps. It can't turn them back into names, so I can't see which apps you chose. If you revoke the permission, the tokens stop working and the blocks end.
When you tap a locked app, a "Blocked" screen appears with an "Open in minulo" button that takes you to the Reels-free version. You don't need to delete the official apps.
This is also where the notification limit comes from. Notifications come from the official apps, and while an official app is blocked, its notifications don't arrive. minulo itself sends no push notifications. If you need Instagram notifications, you can leave the official app unblocked and reply inside minulo.
What's free and what's Pro
Free, with no time limit:
- Hiding Reels, Shorts, Explore and suggested posts on all 10 networks
- The "Every tab but DMs" setting
- Blocking the official apps with Screen Time, up to 2 hours per block. When one ends, you can start another.
minulo Pro adds schedules that switch by day and time, blocks longer than 2 hours, Hard Mode (turning blocking off takes effort on purpose), blocking a network completely so it won't open inside minulo either, and multiple block lists. In the US it's $9.99 a month or $39.99 a year, with a 7-day free trial on the yearly plan. A one-time lifetime purchase is also available.
Privacy, briefly
There is no minulo account and no sign-up. Your records stay on your iPhone. The app sends anonymous usage data and error reports to PostHog, tied to a random ID the app makes. There's no ad SDK, and it doesn't collect your name, email address or location.
The limits, all in one place
- It can't change the official apps. Reels and Shorts are hidden only inside minulo.
- While it blocks an official app, that app's notifications don't arrive.
- Free blocks last up to 2 hours.
- Posting Stories, voice messages and calls aren't available, because the web versions of these networks don't have them. "Take a break" opens the official app for the minutes you choose.
- On Instagram, Explore and Reels share one switch.
- iPhone and Mac only, plus Chrome and Safari extensions. The Android version is in testing.
- It launched in September 2026 and doesn't have many ratings yet.
- It isn't meant for children under 13.
If you use Android only, or you post Stories and make Instagram calls many times a day, minulo probably isn't a good fit.
Try it
If you want Instagram for your group chats and YouTube for normal videos, without Reels and Shorts, you can read more and get the app here: minulo.app. The full list of limits is on this page.
If you're building something similar with web views or the Screen Time API, I'm happy to answer questions in the comments.
Top comments (0)