Help & Support
For help and support you can contact us by email at [email protected]
MVO β User Guide
MVO is a browse-first app for iPhone: built-in browser, favorites library, and on-device cache for media. The app has three main tabs: Favorites, Collections, and Browser. When something is playing, a mini-player appears above the tab bar. The app uses dark mode by default and contains no third-party ads.
Favorites
The Favorites tab is your main library. It lists every favorite you have saved.
What you see in the list
Each row shows a thumbnail, title, author, and the date the favorite was added. A small icon on the right shows the cache status:
- A dotted circle means the favorite is a link only (not yet saved to cache).
- A filled down-arrow circle means the media is in cache.
- An exclamation mark means the last cache attempt failed.
Search
Pull down or use the search field at the top. The prompt reads Search favorites. Search matches the favorite name only.
Sort order
On the main Favorites tab, items are always sorted by Recent (newest first) when you open the screen. There is no sort menu on this tab.
Toolbar
- Settings (slider icon, top right) opens the settings sheet.
- When Premium limits apply, a red badge shows how many free favorite slots you have left. Tap it to open the Premium sheet. See the Premium and free limits section below.
Tap a favorite
- If the favorite has cached media, playback starts. The mini-player appears. The play queue is built from all cached favorites in the current list (respecting any search filter).
- If the favorite is not in cache yet, the app switches to the Browser tab and opens the original page URL.
Row actions
You can open the action menu in two ways:
- Long-press a row.
- Swipe right on a row and tap Action (or use a full swipe).
Both show the same menu:
- Select β enters multi-select mode and selects that row.
- Save to cache β saves the media to your device. Only shown when the favorite is not yet in cache.
- Try again to save to cache β shown when the previous cache attempt failed.
- Collections β opens a sheet to add or remove this favorite from collections.
- Edit β opens a rename dialog. Enter a new name and tap Save.
- Delete β asks you to confirm before removing the favorite and its cache.
Swipe left on a row (or use a full swipe) and tap Delete to remove the favorite. You will be asked to confirm.
Multi-select mode
Enter multi-select by choosing Select from the action menu. While in this mode:
- Tap rows to select or deselect them. A checkmark appears on selected rows.
- The tab bar is hidden.
- A bottom bar offers:
- Done β exits multi-select and clears the selection.
- Add to collection β opens a sheet to add all selected favorites to a collection.
- Delete β asks you to confirm before deleting all selected favorites.
Saving to cache from Favorites
When you choose Save to cache or Try again to save to cache, a blocking overlay appears over the app. It shows the title, URL, and a progress bar. You can tap Cancel to stop the job.
If you are over the free favorite limit, the Premium sheet opens instead. See Premium and free limits.
When caching completes successfully, the favorite name and author may update automatically from the media metadata. If it fails, the row shows an error icon and you can use Try again to save to cache.
Empty state
If you have no favorites (or search returns no results), you see No favorites yet with the message Add pages from the browser to see them here.
Collections
The Collections tab lets you group favorites into named collections (tags).
Collections list
Each row shows the collection name, a badge with the number of favorites in it (if any), and the date the collection was created.
Create a collection
Tap the + button in the top left. Enter a name in the Create a Collection dialog and tap Create. Empty names are ignored.
Sort collections
Tap the sort icon (up/down arrows) in the top right. Choose one of:
- A-Z β alphabetical by name.
- Z-A β reverse alphabetical.
- Recent β newest collections first (default).
- Oldest β oldest collections first.
Your choice is remembered the next time you open the app.
Open a collection
Tap a collection row to see all favorites in that collection. See Collection detail below.
Edit or delete a collection
- Long-press a row and choose Edit to rename it, or Delete to remove the collection.
- Swipe left on a row and tap Delete to remove the collection.
Deleting a collection does not delete the favorites inside it. They stay in your library.
Empty state
If you have no collections, you see No collections yet with the message Create one with the + button.
Collection detail
When you open a collection, you see a filtered favorites list β the same layout as the Favorites tab, but only items in that collection.
Differences from the main Favorites tab:
- The navigation title is the collection name.
- The background is solid (no wallpaper).
- The toolbar has a sort menu only (no Settings button).
Sort options for favorites inside a collection:
- A-Z, Z-A, Recent, Oldest β same as elsewhere.
- Random β shuffles the list using a saved order. Choosing Random again gives a new shuffle.
Search, row actions, multi-select, caching, and playback work the same as on the main Favorites tab.
Collections sheet (from a favorite)
When you choose Collections on a favorite, or Add to collection in multi-select mode, a sheet opens:
- Collections (single favorite) β tap a collection to add or remove the favorite. A checkmark shows membership.
- Add to collection (multi-select) β tap a collection to add all selected favorites to it.
Tap Cancel (top right) to close without changes.
If you have no collections yet, the sheet says No collections and Create collections in the Collections tab first.
Browser
The Browser tab is the starting point for MVO's browse-first workflow: visit sites in-app, then save pages and cache media to your library.
Before you load a page
When no page is loaded, an empty state shows Start browsing now and prompts you to tap the address bar to visit a site.
Browsing a page
Once a page loads, you see the web content and a loading bar at the top while the page loads. You can use the system swipe gestures to go back or forward in history.
If the page fails to load, an overlay shows Cannot connect with a Retry button.
Browser controls
Top row (left to right):
- Back (chevron) β goes back one page in history. Disabled when there is no history.
- URL bar β shows the current address. Tap it to edit with the current URL prefilled. The field reads Search or enter URL. Submit with the keyboard Go key to load a website or run a DuckDuckGo search.
- Clear (X) β opens the same URL editor with an empty field, ready for a new address or search. Disabled when no URL is loaded.
While editing, the bottom inset shows the text field and a Cancel (X) control to close editing without navigating.
Second row:
- Add (green button, full width) β adds the current page to your library. See Adding a favorite from the Browser below. Disabled when no page is loaded or there is a load error.
Adding a favorite from the Browser
Tap Add on a loaded page:
- If the page is already in your favorites, an alert says Already in favorites.
- If you are at the free favorite limit, the Premium sheet opens. See Premium and free limits.
- On Apple Music, YouTube, SoundCloud, or Vimeo, an alert explains that caching is not available and asks whether to add the page as a favorite link. Tap Cancel or Yes. No media check runs on these sites. See Sites where caching isn't available.
- On other sites, the app checks the URL for media. While checking, a loading overlay appears briefly.
- If no media is found, an alert asks We did not find any media on this URL. Add to favorites anyway? You can tap Cancel or Yes to save the page without cached media.
- If the URL is a collection (multi-entry page), you can choose Only one media or All the collection.
- On success, the app switches to the Favorites tab. Caching starts automatically when the site allows it. A toast confirms the add.
Settings
Open Settings from the Favorites tab toolbar (slider icon). The settings sheet opens with Done in the top right to close it.
Copyright Notice
Opens the copyright page on the web.
Premium
Opens the Premium subscription sheet. Only shown when Premium is enabled in the app. See Premium and free limits.
Rate us on the App Store
Opens the App Store review page for the app. Not shown in AltStore builds.
Cache settings
- Audio only β when on, cache jobs prefer audio-only formats.
- High quality video β when on, cache jobs prefer higher-quality video.
Playback
- Auto play next song β when on, playback continues to the next track in the queue when a song ends. When off, playback stops at the end of the current track (unless repeat is on).
- Resume playback where you left off β when on, each favorite remembers where you stopped and resumes from that position next time.
Display
- Force dark mode β when on, the app stays in dark mode.
Cleanup
- Clear cache β removes all cached media and marks favorites as link-only. Asks for confirmation with Cancel or Clear cache.
- Delete all library β removes your entire library and all associated cache. Cannot be undone. Asks for confirmation with Cancel or Delete All.
Help
Opens the help page on the web.
Privacy and Terms
Opens the privacy and terms page on the web.
Our other apps
Opens the developer website.
Show onboarding
Replays the first-run onboarding tour.
Player and queue
When you play a favorite that has cached media, a mini-player appears above the tab bar on every tab.
Mini-player
The mini-player shows:
- Artwork (or a placeholder icon).
- Title and artist.
- Play / Pause β toggles playback.
- Next β skips to the next track. Disabled when the upcoming queue is empty and repeat is off.
- Queue list (list icon) β opens the queue sheet.
- A progress bar with elapsed time on the left and total duration on the right. Drag the bar to seek.
Other actions:
- Close (X, top left) β stops playback and clears the queue.
- Tap the title or artist area β opens the queue sheet.
- Swipe up on the video strip or metadata β moves the mini-player to the top of the screen.
- Swipe down β moves it back to the bottom.
- Swipe left or right β dismisses the player (same as Close).
For video tracks, a video preview strip appears. Tap it to open fullscreen video.
Queue sheet
Open the queue from the mini-player list button or by tapping the title.
The sheet has three sections:
- Previously Played β tracks you already listened to in this session (dimmed).
- Now Playing β the current track (highlighted). The list scrolls to this row when the sheet opens.
- Upcoming β tracks still in the queue.
Actions in the queue:
- Tap any Previously Played or Upcoming row to jump to that track.
- Tap Now Playing to toggle play or pause.
- Swipe to delete on an Upcoming row only β removes that track from the queue. You cannot delete past or current tracks this way.
The sticky footer at the bottom repeats the play controls and adds:
- Shuffle β randomizes the order of upcoming tracks only.
- Repeat β cycles through three modes:
- Off β stops at the end of the queue.
- Repeat All β loops the entire queue.
- Repeat One β loops the current track. Pressing Next manually still advances to the next track.
Tap Done (top right) to close the sheet.
Fullscreen video
Tap the video strip in the mini-player to enter fullscreen. Use the system video controls for play, pause, scrubbing, and AirPlay. Swipe down to close fullscreen.
Lock screen and Control Center
When media is playing, you can control playback from the lock screen and Control Center:
- Play, pause, next track, previous track, and scrub the timeline.
There is no Previous button in the in-app mini-player or queue β only on the lock screen and Control Center.
Premium and free limits
When Premium is enabled, the free tier allows up to 10 favorites.
Remaining slots badge
On the Favorites tab toolbar, a red number shows how many free slots you have left. Tap it to open the Premium sheet.
What happens at the limit
- Adding a favorite β blocked when you already have 10 favorites. The Premium sheet opens. This applies when using Add in the Browser and any other add path.
- Saving to cache β blocked when your library has more than 10 favorites. The Premium sheet opens instead of starting the cache job.
- Adding an entire collection from the Browser β if the collection has more entries than your remaining slots, only as many as your slots allow are added.
Premium sheet
You can open the Premium sheet from:
- The remaining slots badge on Favorites.
- Settings β Premium.
- Any blocked add or cache action.
The sheet title is Go Premium. If you are already subscribed, it shows Thank you instead.
The main message explains that Premium lets you grow your library beyond the free 10-favorite limit.
Inside the sheet:
- Choose a subscription option to purchase.
- Restore purchases β restores a previous subscription.
- Legal links for terms and privacy.
- Close (top right) β dismisses the sheet.
If you started an action (such as adding a favorite) and then subscribe, that action completes automatically after purchase.
When limits do not apply
In some builds (for example internal test builds or AltStore distribution), Premium may be disabled. In that case the badge, limits, and Premium menu entry are hidden.
Saving to cache
Saving media to cache stores it on your device so you can play it without a network connection. You can start caching from:
- Save to cache on a favorite row (Favorites or collection detail).
- Add in the Browser (caching starts automatically after adding, except on platforms listed below).
Sites where caching isn't available
For legal reasons, Apple Music, YouTube, SoundCloud, and Vimeo can be saved as favorites but cannot be saved to cache.
- When you tap Add on one of these sites, an alert explains that caching is not available and asks whether to add the page as a favorite link.
- The Save to cache action does not appear on those favorites.
- Other sites are unaffected.
During a cache job
A blocking overlay covers the app. It shows:
- Cachingβ¦
- The favorite name and URL.
- A progress bar and percentage.
- Part N Β· XX% when the job has multiple parts (for example separate video and audio).
- Cached X of Y when several favorites are being processed in a batch.
Tap Cancel to stop the active job.
After caching completes
- Success β the favorite is marked as in cache. Name and author may update from media metadata. A filled down-arrow icon appears on the row.
- Failure β an error message appears with OK. The row shows an exclamation icon. Use Try again to save to cache from the row action menu.
Cache settings (Settings β Cache settings) affect format choices for future jobs: Audio only and High quality video.
About the pricing
At Apepite, we aren't big fans of ads.
Sure, they help monetize our work, but the problem is they ruin the user experience.
That goes directly against our promise: high-quality apps.
So, whenever possible, we prefer to go without ads.
Our solution? We ask for a small financial contribution: one that we found fair and reasonable.
For MVO, you can try the App with 10 favorites.
Then, if you are convinced, you can either pay:
- 1.99 USD (or local equivalent) per month for unlimited use
- 19.99 USD (or local equivalent) per year for unlimited use