Aller au contenu principal

MyTelevision Mobile Application - UI/UX Design Specification

Version: 1.0.0 Date: January 2026 Platform: iOS & Android Mobile Target: Netflix/Prime/Apple TV+ Grade Streaming Experience


1. Global UX Principles

1.1 Core Philosophy

PrincipleDescriptionImplementation
Content-FirstContent is the hero; UI fades into the backgroundDark theme, large imagery, minimal chrome
Thumb-FriendlyCritical actions within thumb reach zoneBottom navigation, FABs in lower third
Instant GratificationMinimize taps to content consumptionPlay in 2 taps max from any screen
Contextual IntelligenceUI adapts to user behavior and content typeDynamic carousels, personalized recommendations
Seamless ContinuityCross-device experience preservationSync watch progress, queue, preferences
Respectful MonetizationSubscription prompts never block experienceContextual upgrades, graceful degradation

1.2 Content-Type Specific UX Principles

Content TypeUX MoodKey Differentiator
Live TVReal-time, urgent, channel-surfing"LIVE" badges, EPG overlay, quick channel switch
VOD (Movies/Series)Cinematic, exploratory, lean-backHero artwork, trailers, binge-friendly
PodcastsIntimate, background-friendly, episodicMini-player, playback speed, sleep timer
RadioAmbient, always-on, discoveryNow playing, persistent mini-player
NewsInformative, scannable, freshTimestamps, category chips, share-first
ReplaysCatch-up, time-shifted, completionistAir date, expiration indicators
Live EventsAppointment viewing, FOMO-drivenCountdown, reminders, social proof

1.3 Performance Guidelines

MetricTargetImplementation
First Contentful Paint< 1.5sSkeleton screens, progressive loading
Time to Interactive< 3sLazy load below-fold content
Image Load< 500msCDN, WebP/AVIF, blur-up technique
Video Start< 2sAdaptive bitrate, pre-buffering
Scroll Performance60fpsVirtualized lists, image caching

2. Design System Overview

2.1 Color System

Primary Palette (Dark Theme Default)

Background Levels:
- Level 0 (Deepest): #000000 - Pure black (OLED optimization)
- Level 1 (Surface): #121212 - Cards, sheets
- Level 2 (Elevated): #1E1E1E - Modals, dropdowns
- Level 3 (Highlight): #2C2C2C - Selected states

Accent Colors:
- Primary Brand: #E50914 - CTAs, highlights
- Secondary: #0080FF - Links, info states
- Success: #46D369 - Confirmations, live indicators
- Warning: #F5C518 - Ratings, alerts
- Error: #FF453A - Errors, destructive actions

Text Colors:
- Primary Text: #FFFFFF - Titles, primary content
- Secondary Text: #B3B3B3 - Descriptions, metadata
- Tertiary Text: #757575 - Timestamps, hints
- Disabled Text: #4D4D4D - Inactive elements

Content-Type Accent Colors

Live TV:                 #FF0000 - Red pulse for live
Radio: #1DB954 - Audio green
Podcasts: #8B5CF6 - Purple
News: #3B82F6 - Blue
Events: #F59E0B - Amber
Kids Mode: #10B981 - Friendly green

2.2 Typography

Type Scale

StyleSizeWeightLine HeightUse Case
Display34ptBold1.2Hero titles
H128ptBold1.25Screen titles
H222ptSemibold1.3Section headers
H318ptSemibold1.35Card titles
Body Large17ptRegular1.5Primary content
Body15ptRegular1.5Descriptions
Body Small13ptRegular1.4Metadata
Caption11ptMedium1.3Labels, badges
Overline10ptBold1.2Category tags

2.3 Spacing System

Base Unit: 4pt

Spacing Scale:
- xs: 4pt - Icon padding, tight groups
- sm: 8pt - Between related elements
- md: 16pt - Card padding, section gaps
- lg: 24pt - Between sections
- xl: 32pt - Major section separation
- 2xl: 48pt - Screen-level padding
- 3xl: 64pt - Hero spacing

3. Navigation Architecture

3.1 Information Architecture

MyTelevision App
|
+-- [Unauthenticated Zone]
| +-- Splash Screen
| +-- Onboarding Carousel
| +-- Welcome Screen
| +-- Login / Register / Forgot Password
| +-- Guest Preview Mode
|
+-- [Profile Selection Gate]
| +-- Profile Picker (max 4 profiles)
|
+-- [Authenticated Zone - Tab Navigation]
|
+-- Tab: Home
| +-- Home Feed
| +-- Content Detail (Modal)
| +-- Notifications
|
+-- Tab: Search
| +-- Search Home
| +-- Search Results
| +-- Filters (Sheet)
|
+-- Tab: Live TV
| +-- Live TV Home
| +-- Channel Player
| +-- EPG / TV Guide
| +-- Live Events
|
+-- Tab: Library
| +-- My List
| +-- Continue Watching
| +-- Downloads
| +-- Watch History
|
+-- Tab: Profile
+-- Profile Home
+-- Edit Profile
+-- Account / Security / Devices
+-- Subscription / Payment
+-- Settings / Help

[Global Overlays]
+-- Video Player (Full Screen)
+-- Audio Player (Mini + Full)
+-- Live TV Player
+-- Error States

3.2 Bottom Navigation Structure

PositionTabIconLabelBadge
1Homehouse.fillHome-
2SearchmagnifyingglassSearch-
3Live TVtv.fillLiveRed dot if live event
4Librarybooks.vertical.fillLibraryDownload count
5Profileperson.crop.circleProfile-

3.3 Deep Linking Support

mytv://home
mytv://search?q={query}
mytv://movie/{id}
mytv://series/{id}/season/{season}/episode/{episode}
mytv://livetv/channel/{id}
mytv://podcast/{id}/episode/{episode}
mytv://profile/subscription

4. Key Screens Overview

4.1 Home Screen

Primary content discovery hub with personalized feed featuring:

  • Hero Banner (60% screen height, auto-rotate 5s, Play + My List CTAs)
  • Continue Watching (large landscape cards with progress bars)
  • Live Now (channel cards with pulsing LIVE badge)
  • Top 10 (numbered poster cards)
  • My List, New Releases, Recommended, Genre Rows
  • Podcasts (square cards), News (landscape cards)

Data Sources: Multiple API endpoints aggregated (/sliders, /watch-history/continue, /livetv/channels, /movies, /favorites, /signals/recommendations)

4.2 Content Detail Screens

Movie Detail: Hero image/trailer, metadata (year, duration, rating, genres), action buttons (Play, Download, My List, Like, Share), synopsis, cast carousel, trailers, similar content.

Series Detail: Same as movie + season selector (tabs for 1-3 seasons, dropdown for 4+), episode list with progress bars, resume button logic.

Data Sources: GET /api/v2/movies/{id}, GET /api/v2/series/{id}, GET /api/v2/series/{id}/seasons

Search Home: Persistent search bar, voice input, recent searches (chips), trending searches, browse by genre (2-column grid), browse by type (horizontal chips).

Search Results: Content type tabs, result count, filter button, grid display (3 columns for posters, 1 column for news), infinite scroll pagination.

Data Sources: GET /api/v2/search, local storage for recent searches, GET /api/v2/search/trending

4.4 Live TV

Live TV Home: Guide button, live now carousel, category tabs, channel list with current/next program info.

Channel Player: Live video player, channel info, program schedule, swipe channel navigation, EPG mini-guide.

EPG / TV Guide: Date selector, category filters, time-scaled program grid, current time indicator.

Data Sources: GET /api/v2/livetv/channels, GET /api/v2/livetv/epg, WebSocket for live status

4.5 Library

Library Home: My List, Continue Watching, Downloads, Watch History with counts and quick access.

Downloads: Storage indicator, smart downloads toggle, download list with states (queued, downloading, paused, complete, error).

Data Sources: /favorites, /watch-history/continue, local SQLite for downloads

4.6 Profile & Settings

Profile Home: Avatar, name, email, switch profile, menu (Account, Subscription, Settings, Help).

Account: Email, phone, password, linked social accounts, devices, privacy, delete account.

Subscription: Current plan details, change plan, payment method, billing history.


5. Player Screens

5.1 Video Player (Full Screen)

Controls (auto-hide 3s): Back, title, lock, settings, cast, volume, rewind 10s, play/pause, forward 10s, progress bar with preview, skip intro, next episode.

Gestures: Tap (show/hide), double tap left/right (rewind/forward), swipe up/down left (brightness), swipe up/down right (volume), pinch (zoom).

Settings Sheet: Quality (Auto/1080p/720p/480p/360p), subtitles, audio track, playback speed.

5.2 Audio Player (Mini + Full)

Mini Player: Persistent bar above tab bar with artwork, title, play/pause, close. Tap to expand.

Full Player: Large artwork, title, podcast name, progress bar, skip 15s back / play / skip 30s forward, speed control, sleep timer, queue, download, share, like.

5.3 Live TV Player

No seek bar (live content), LIVE badge with pulse, channel strip for quick switching, swipe up for EPG mini-guide.


6. Error & Edge States

Network Errors

  • No internet: Illustration + "Try Again" + "Go to Downloads"
  • Slow connection: Banner with quality switch option

Authentication Errors

  • Session expired: Lock icon + "Sign In" button
  • Another device: Manage devices option

Content Errors

  • Not available: Browse alternatives suggestion
  • Age-restricted: PIN entry
  • Playback error: Error code + retry + report

Subscription Errors

  • Premium required: Upgrade prompt
  • Payment failed: Update payment CTA

Device Errors

  • Device limit reached: Manage devices
  • Stream limit reached: Stop other streams option

7. Accessibility & Inclusivity

FeatureImplementation
High Contrast ModeDarker backgrounds, brighter text, stronger borders
Large Text SupportDynamic Type (iOS), Font Scale (Android) up to 200%
Reduced MotionRespect system setting, disable auto-play/animations
Color Blind SafeDon't rely on color alone; use icons, patterns
Closed CaptionsFull CC support, customizable appearance
Audio DescriptionAD track for visually impaired
Touch Target SizeMinimum 44x44pt (iOS), 48x48dp (Android)
Screen ReaderMeaningful labels, hints, proper roles for all elements

Kids Mode

When Kids Profile is active:

  • Simplified navigation
  • Larger cards and buttons
  • Age-filtered content only
  • No ads or promotions
  • No purchase/upgrade options
  • Auto-play limits enforced
  • Parental timer warnings
  • Friendly color scheme

8. Future Enhancements

Phase 2

FeatureImpact
Watch PartyEngagement
Social FeaturesCommunity
Advanced RecommendationsRetention
Spatial Audio (Dolby Atmos)Premium value
HDR10+/Dolby VisionPremium value

Phase 3

FeatureImpact
AR Content PreviewInnovation
Second Screen ExperienceEngagement
GamificationRetention
Live ShoppingRevenue

Technical Improvements

ImprovementDescription
Offline-First ArchitecturePWA-like experience, works offline
Edge CachingFaster content delivery
Predictive Pre-loadingAnticipate user actions, pre-buffer
WebSocket Real-timeLive updates, presence, notifications
GraphQL APIEfficient data fetching for mobile

Appendix: Data Source Quick Reference

Screen/FeatureAPI Endpoint
Home FeedMultiple endpoints aggregated
MoviesGET /api/v2/movies
SeriesGET /api/v2/series
Live TVGET /api/v2/livetv/channels
EPGGET /api/v2/livetv/epg
RadioGET /api/v2/radio/channels
PodcastsGET /api/v2/podcasts/collections
NewsGET /api/v2/news
ReplaysGET /api/v2/replays/collections
Live EventsGET /api/v2/live-events
SearchGET /api/v2/search
FavoritesGET /api/v2/favorites
Watch HistoryGET /api/v2/watch-history
Continue WatchingGET /api/v2/watch-history/continue
ProfilesGET /api/v2/profiles
DevicesGET /api/v2/devices
SubscriptionGET /api/v2/subscriptions/current
NotificationsGET /api/v2/notifications
Streaming TokenPOST /api/v2/streaming/token

This specification is designed to be a living document. Update as designs evolve and features are implemented.