1000xdev

Manisha Sharma — OTT Platform Proposal (iOS & Android)

Native iOS & Android OTT streaming app for Manisha Sharma — built on React Native with Cloudflare Stream for HLS delivery, Hetzner backend, and Razorpay subscription billing.

Date

2026-03-08

PROP-OTT-MVP-2026

Manisha Sharma — OTT Platform Proposal

Native iOS & Android Apps · Cloudflare Stream · Subscription Billing · Admin Panel

This proposal covers a complete, production-ready mobile OTT platform — native iOS and Android apps built with React Native, delivering premium video content via Cloudflare Stream, powered by a Hetzner backend, and monetised through Razorpay subscriptions.

What We're Building

A mobile-first OTT platform with a single React Native codebase shipping to both the App Store and Play Store. Cloudflare Stream handles all video upload, automatic transcoding, and global HLS delivery — eliminating complex media infrastructure. The backend runs on Hetzner for high-performance, cost-efficient server hosting.

Immediate Objectives

  • Launch native iOS and Android apps capable of serving paying subscribers from day one
12 Weeks
Delivery Timeline
₹15,00,000
MVP Investment
React Native
iOS & Android
Cloudflare
Stream & CDN

About Us

About 1000xdev

1000xDev builds systems that scale with your business. We combine modern mobile and web development with intelligent architecture to deliver platforms that grow with you — without constant rewrites or accumulated technical debt.

We specialize in high-performance mobile applications, SaaS platforms, streaming infrastructure, and conversion-focused product engineering. We've built for consumer brands, fintech companies, enterprise SaaS, and media platforms across India and beyond.

99.99%

System Uptime

50+

Projects Delivered

2M+

Users Served

4.9★

Client Rating

Technology

Purpose-Built Mobile OTT Stack

React Native for native iOS & Android. Cloudflare Stream for video. Hetzner for backend. No bloated cloud bills — just the right tools for the job.

The platform uses React Native for a single codebase that ships to both iOS and Android natively. Cloudflare Stream handles all video upload, automatic transcoding, and global HLS CDN delivery — replacing the complexity of AWS MediaConvert + S3 + CloudFront with a single managed service. The backend API and database run on Hetzner VPS — high-performance European cloud servers at a fraction of AWS pricing.

React Native
iOS + Android
Cloudflare
Stream & HLS CDN
Hetzner
Backend Server
Razorpay
Subscriptions

React Native — One Codebase, Two Platforms

A single React Native codebase ships to both the App Store (iOS) and Google Play Store (Android). Native performance, native UI components, and a polished viewing experience on every device — at roughly half the cost of separate native apps.

Cloudflare Stream — Upload, Transcode, Deliver

Cloudflare Stream is a fully managed video platform. Upload a video once — Cloudflare automatically transcodes it into adaptive HLS (multiple quality levels), stores it, and delivers it globally via Cloudflare's edge network. No AWS MediaConvert pipelines, no S3 lifecycle policies, no CloudFront distribution config — it's all handled.

Global HLS Adaptive Streaming

Every video streamed to viewers automatically adapts quality based on their connection — switching between 360p, 480p, 720p, and 1080p in real time. Cloudflare's global edge network ensures low-latency delivery across India and internationally.

Hetzner Backend — High Performance, Low Cost

The Node.js API and PostgreSQL database run on Hetzner VPS — renowned for fast NVMe SSDs, reliable uptime, and pricing that undercuts AWS by 60–80%. The right server for the job without the cloud premium.

Razorpay In-App Subscriptions

Full subscription lifecycle on mobile — plan selection, Razorpay checkout (UPI, cards, net banking, wallets), auto-renewal, invoice emails, and failed payment handling. Razorpay's React Native SDK integrates natively into the app.

Push Notifications — FCM & APNs

Firebase Cloud Messaging (Android) and Apple Push Notification Service (iOS) power real-time alerts — new content releases, subscription renewal reminders, and platform announcements.

Comparable Platforms

Successful OTT platforms built on similar mobile-first stacks

CuriosityStreamMUBIMasterClassHotstarJioTVSonyLiv

What We Deliver

Seven focused modules covering the complete mobile OTT experience — from user onboarding to video playback to in-app subscription billing. A shared backend API powers both iOS and Android apps simultaneously. The admin panel gives the content team full control via a browser-based interface.

1

1. Backend API & Infrastructure

The shared API layer that powers both the iOS and Android apps. Built with Node.js on Hetzner, with PostgreSQL as the database. Cloudflare Stream is integrated for all video operations.

  • Node.js REST API — all endpoints consumed by iOS and Android apps
  • PostgreSQL database on Hetzner — users, content, subscriptions, watch history
  • Cloudflare Stream integration — upload webhooks, signed URL generation for protected playback
  • JWT authentication middleware — secure API access from mobile apps
  • Hetzner VPS provisioning and server configuration
  • CI/CD pipeline — automated deployments on code push
  • Staging and production environments
2

2. User Authentication & Account Management

Secure, smooth authentication on mobile — covering the full user identity lifecycle from first open to account management.

  • Email and password registration with email OTP verification
  • OTP-based login (email) for frictionless return access
  • Google Sign-In (OAuth) for one-tap login on iOS and Android
  • JWT session management with secure token refresh
  • User profile — name, avatar, notification preferences
  • Password reset and account recovery flow
  • Subscription status displayed on profile
  • Account deletion (GDPR/App Store policy compliance)
3

3. Content Catalog & Discovery

The primary browsing experience — structured, searchable, and optimised for the mobile scrolling pattern. Viewers can discover content by genre, category, language, or search.

  • Home screen with curated rows — Trending, New Releases, Continue Watching, Categories
  • Full content catalog with grid layout
  • Genre and category filtering
  • Full-text search across titles, descriptions, and tags
  • Content detail screen — title, synopsis, cast, genre, release year, trailer
  • Watchlist — save content for later, accessible across devices
  • Content thumbnail and poster image display via Cloudflare Images
  • Offline-friendly catalog browsing (cached metadata)
4

4. Video Streaming via Cloudflare Stream

The core of the platform. Video is uploaded to Cloudflare Stream, automatically transcoded into adaptive HLS, and played back in the app via a native video player. Signed URLs ensure only paying subscribers can access content.

  • Cloudflare Stream integration — video playback via signed secure URLs (subscriber-only access)
  • React Native Video player with HLS adaptive bitrate streaming
  • Adaptive quality — auto-selects 360p / 480p / 720p / 1080p based on connection
  • Playback controls — play, pause, seek, volume, fullscreen, speed control
  • Picture-in-picture (PiP) support on iOS and Android
  • Resume playback — continues from exact last position
  • Free preview support — first N minutes unlocked, rest gated behind subscription
  • Landscape and portrait orientation handling
5

5. Subscription & In-App Billing

Complete subscription lifecycle on mobile — plan selection, Razorpay in-app payment, auto-renewal, and access control — with invoice emails sent on every billing event.

  • Subscription plan screens — Monthly / Quarterly / Annual with pricing
  • Razorpay React Native SDK integration — UPI, credit/debit cards, net banking, wallets
  • Subscription creation, auto-renewal, and failed payment handling with retry
  • Invoice generation and email delivery on each billing event
  • In-app subscription management — view plan, renewal date, cancel
  • Upgrade/downgrade plan flow
  • Subscription gating — full content access only for active subscribers
  • Free trial support (configurable duration)
6

6. Watch History & Resume Playback

Personalised viewing experience — the platform tracks progress server-side so it syncs across both iOS and Android devices automatically.

  • Per-user watch progress tracked server-side (syncs across devices)
  • Continue Watching row on home screen — most recently watched, sorted by recency
  • Resume playback at exact timestamp on re-open
  • Mark as watched / unwatched
  • Watch history screen — full list with timestamps
  • Push notification trigger — remind users of unfinished content (optional)
7

7. Admin Panel (Browser-Based)

A web-based admin interface for the content team — upload videos, manage metadata, monitor subscribers, and view revenue analytics. No mobile app needed for admin — designed for desktop browser use.

  • Secure admin login — separate from viewer accounts
  • Video upload — drag-and-drop upload directly to Cloudflare Stream with progress bar
  • Content management — title, description, genre, tags, cast, language, release year, thumbnail
  • Publish / unpublish / schedule release controls
  • Subscriber management — view, search, filter, suspend accounts
  • Subscription and revenue dashboard — MRR, active subscribers, churn rate
  • Content analytics — views, watch time, completion rate per title
  • Push notification sender — broadcast messages to all subscribers or segments

How It Works

Two primary flows — the subscriber's end-to-end mobile streaming journey, and the admin team's content upload and publish workflow via the browser-based panel.

1

Subscriber Streaming Flow (iOS / Android)

From first app open to watching content — the complete mobile user journey including registration, subscription payment, and HLS playback.

1
Download Appstart

Viewer downloads from App Store (iOS) or Play Store (Android). App opens to the home screen with a preview of available content.

2
Register / Login

Signs up via email+OTP or Google Sign-In. JWT session persists across app restarts.

3
Choose a Plan

Selects Monthly / Quarterly / Annual. Razorpay sheet opens in-app — UPI, card, or net banking. Payment confirmed instantly.

4
Browse Catalog

Full catalog unlocked. Browses by genre, searches titles, adds to Watchlist, or picks from the Trending row.

5
Watch Content

Taps a title — Cloudflare Stream loads the signed HLS URL. Adaptive bitrate kicks in, quality adjusts to connection automatically.

6
Resume Laterend

Returns to app — Continue Watching row surfaces the exact title at the exact timestamp. One tap to resume.

2

Admin Content Upload & Publish Flow

How the content team uploads a new title to Cloudflare Stream, adds metadata, and publishes it to the app — without any engineering involvement.

1
Admin Loginstart

Content team opens the browser-based admin panel. Secure login with admin credentials.

2
Upload Video

Drag-and-drop video file. Upload goes directly to Cloudflare Stream. Progress bar shows upload status. Cloudflare automatically begins transcoding to HLS.

3
Add Metadata

Fill in title, synopsis, genre, tags, cast, language, release year. Upload thumbnail and poster image.

4
Transcoding Completeverify

Cloudflare Stream finishes processing — HLS streams at 360p / 480p / 720p / 1080p are ready. Admin sees status update in the panel.

5
Publishend

Set access (subscriber-only / free preview), optionally schedule a release date or time, and hit Publish. Title appears immediately in the app catalog.

These flows represent the primary field operator journeys. All data is cloud-resident; the application is online-only and requires an active connection to function.

Project Timeline

1
Discovery & ArchitectureWeeks 1–2
API architecture, database schema, and Cloudflare Stream integration planHetzner server provisioning and CI/CD pipelineFigma wireframes and design system for all key app screensClient sign-off before development begins
2
Backend API & AuthWeeks 1–3
Node.js REST API — full endpoint set for all app featuresPostgreSQL schema — users, content, subscriptions, watch historyCloudflare Stream webhooks and signed URL generationJWT auth — email OTP, Google OAuth, token refresh
3
Content Catalog & StreamingWeeks 3–7
React Native app — iOS and Android setup, navigation, home screenFull catalog, search, filtering, content detail, and watchlistCloudflare Stream HLS player — adaptive bitrate, PiP, resume playbackWatch history synced server-side across devices
4
Subscriptions & Admin PanelWeeks 6–10
Razorpay in-app subscriptions — plans, auto-renewal, invoicing, gatingIn-app subscription management (view, upgrade, cancel)Admin panel — Cloudflare Stream upload, content management, publish controlsAdmin — subscriber management, revenue dashboard, content analytics
5
Notifications, QA & App Store LaunchWeeks 10–12
FCM (Android) + APNs (iOS) push notificationsEnd-to-end QA on physical iOS and Android devicesApp Store (iOS) and Google Play Store (Android) submissionAdmin panel training and 30-day post-launch support

Investment Breakdown

Fixed-price MVP build at ₹15,00,000 covering all seven modules — native iOS and Android apps, backend API on Hetzner, Cloudflare Stream integration, and browser-based admin panel. Infrastructure is billed directly by Hetzner, Cloudflare, and Razorpay — not through us.

Investment Breakdown

Key components included in the engagement

MVP Build — ₹15,00,000

₹15,00,000
  • Backend API & Hetzner Infrastructure — ₹2,00,000
  • User Authentication & Account Management — ₹1,25,000
  • Content Catalog & Discovery — ₹1,75,000
  • Video Streaming via Cloudflare Stream — ₹3,00,000
  • Subscription & In-App Billing (Razorpay) — ₹2,00,000
  • Watch History & Resume Playback — ₹75,000
  • Admin Panel (Browser-Based) — ₹2,00,000
  • Push Notifications, QA, DevOps & App Store Submission — ₹2,25,000

Monthly Infrastructure (Tentative) + Streaming as Per Actuals

₹10,000–₹15,000/month + actuals
  • Hetzner VPS + Managed PostgreSQL — tentative ₹10,000–₹15,000/month (fixed, billed by Hetzner)
  • Cloudflare Stream — $5 per 1,000 min stored + $1 per 1,000 min delivered (billed as per actuals by Cloudflare)
  • Razorpay — 2% per successful transaction, no monthly fee (billed as per actuals)
  • Firebase push notifications — free tier
  • Note: Hosting is a fixed monthly cost. Streaming and payments are purely as per actuals.

Stage-wise Payment Schedule

Investment spread across two delivery stages with milestone-based payments

1
Project Kick-Off
₹6,00,000 — Begin architecture, design, and backend setup
Timeline
On signing
Investment
40%
2
Core App Delivery
₹4,50,000 — On delivery of catalog, streaming, and subscription modules
Timeline
Week 7
Investment
30%
3
App Store Launch
₹4,50,000 — On App Store and Play Store submission
Timeline
Week 12
Investment
30%

Investment Details

Fixed-price MVP build covering all seven modules. Hosting (Hetzner) is tentatively ₹10,000–₹15,000/month. Cloudflare Stream and Razorpay are billed as per actuals — all charged directly by providers, no markup.

Investment Summary

Project Fee₹15,00,000

18% GST applicable on all development invoices as per Indian tax regulations. Hetzner, Cloudflare, and Razorpay charges are billed directly to your accounts and subject to their respective tax terms.

OTT Mobile Platform MVP (iOS & Android)

Native iOS & Android OTT app — React Native, Cloudflare Stream, Hetzner backend, Razorpay subscriptions, admin panel

₹15,00,000

End-to-end development of a production-ready mobile OTT platform. React Native app for iOS and Android with Cloudflare Stream HLS playback, Node.js API on Hetzner, PostgreSQL database, Razorpay in-app subscriptions, watch history, push notifications, and a browser-based admin panel. Delivered over 16–20 weeks including App Store and Play Store submission.

Features:

React Native app — single codebase shipping to iOS (App Store) and Android (Play Store)
Cloudflare Stream — video upload, automatic HLS transcoding, global CDN delivery
Node.js API on Hetzner VPS with PostgreSQL database
User auth — email OTP, Google Sign-In, JWT sessions
Content catalog — browse, search, filter, watchlist
HLS adaptive streaming with resume playback
Razorpay in-app subscriptions — auto-renewal, invoicing, gating
Watch history synced across iOS and Android
Push notifications via FCM (Android) and APNs (iOS)
Browser-based admin panel — upload, manage, publish, analytics
App Store + Play Store submission included
30 days post-launch support
Timeline: 12 weeks
Team: 1 Project Manager + 1 React Native Developer + 1 Backend Developer + 1 UI/UX Designer

Monthly Hosting & Infrastructure (Tentative)

Hetzner VPS + PostgreSQL — tentative ₹10,000–₹15,000/month, billed directly by Hetzner

₹12,500
per month

Server and database hosting on Hetzner — billed directly to your Hetzner account. Fixed monthly costs regardless of usage. Estimate: ₹10,000–₹15,000/month depending on server tier selected at launch.

Features:

Hetzner VPS — application server (NVMe SSD, dedicated vCPU): ~₹6,000–₹9,000/month
Hetzner Managed PostgreSQL — database hosting: ~₹4,000–₹6,000/month
Firebase (FCM push notifications) — free tier covers standard usage
Total hosting estimate: ₹10,000–₹15,000/month (fixed, billed directly by Hetzner)
Timeline: Ongoing — fixed monthly, billed directly by Hetzner
Team: Self-managed post-handover. Optional AMC available.

Cloudflare Stream + Razorpay — Billed as Per Actuals

Video streaming and payment fees — no fixed monthly cost, billed purely on usage by Cloudflare and Razorpay

Cloudflare Stream and Razorpay have no monthly minimum. Both are billed directly to your accounts based on actual usage — content stored, minutes streamed, and transactions processed. Costs scale directly with platform activity.

Features:

Cloudflare Stream storage — $5 per 1,000 minutes of video stored
Cloudflare Stream delivery — $1 per 1,000 minutes streamed to viewers
Razorpay — 2% per successful subscription payment, no monthly fee
No charges when there is no activity — purely usage-based
Both billed as per actuals directly by Cloudflare and Razorpay
Timeline: Ongoing — billed as per actuals by Cloudflare and Razorpay
Team: No management needed — fully handled by provider infrastructure.

What's Included at No Extra Cost

30 days post-launch bug fixes and support
Hetzner server provisioning and configuration
Cloudflare Stream account setup and integration
Razorpay account configuration and webhook setup
App Store (iOS) and Play Store (Android) submission
Admin panel training session
Complete source code ownership transferred on final payment
AMC (Annual Maintenance Contract) available post-support period

Payment Schedule

1
40% on project kick-off (₹6,00,000) — begin architecture, design, and backend
2
30% on core app delivery — Week 7 (₹4,50,000)
3
30% on App Store and Play Store submission — Week 12 (₹4,50,000)
4
Infrastructure costs billed directly to your Hetzner, Cloudflare, and Razorpay accounts

Terms & Conditions

Payment Terms

Milestone 1 — Project Kick-Off (40%): ₹6,00,000 payable on agreement signing. Development commences after receipt of this payment.
Milestone 2 — Core App Delivery (30%): ₹4,50,000 payable on delivery of the catalog, streaming, and subscription modules (approximately Week 7).
Milestone 3 — App Store Launch (30%): ₹4,50,000 payable on App Store and Google Play Store submission (approximately Week 12).
All invoices payable within 7 days of invoice date via bank transfer (NEFT/RTGS/IMPS).
18% GST applicable on all development invoices as per Indian tax regulations.
Hetzner, Cloudflare, and Razorpay infrastructure costs are billed directly to client accounts by those providers.

Scope Management

Scope covers the seven MVP modules as defined: Backend API, User Authentication, Content Catalog, Video Streaming (Cloudflare Stream), Subscription & Billing, Watch History, and Admin Panel.
This engagement delivers iOS and Android mobile apps and a browser-based admin panel. A public-facing web streaming platform is not included in this scope.
Stage 2/3 features — DRM, smart TV apps, live streaming, AI recommendations — are not included in the MVP.
All scope changes require a written change request with a revised timeline and cost estimate, approved by both parties before implementation.

Infrastructure & Third-Party Services

The platform uses Hetzner (VPS + managed PostgreSQL), Cloudflare Stream, and Razorpay. Client is responsible for creating and maintaining accounts with these providers.
1000xdev will configure all required services as part of the engagement. Ongoing infrastructure management is the client's responsibility post-handover.
Cloudflare Stream pricing is usage-based ($5/1,000 min stored + $1/1,000 min delivered). Actual costs depend on content library size and viewer streaming volume.
Optional AMC (Annual Maintenance Contract) available for ongoing infrastructure and platform management.

App Store & Play Store

Client is responsible for creating and maintaining Apple Developer Account (₹8,299/year) and Google Play Developer Account ($25 one-time fee).
1000xdev will prepare and submit app builds to both stores as part of this engagement.
App Store review timelines are determined by Apple and Google — typically 1–3 business days. Delays caused by store review are outside 1000xdev's control.
Any app rejections due to content policy violations are the client's responsibility. Rejections due to technical implementation will be fixed by 1000xdev at no additional cost.

Post-Launch Support

30 days post-launch support included for bug fixes and issues within the delivered scope.
Support covers bugs within delivered functionality — not new feature requests, infrastructure changes, or app store policy changes.
An admin panel training session is included and conducted at handover.
AMC available for ongoing support after the 30-day period.

Intellectual Property

All custom code, designs, and assets developed for this platform become client property upon receipt of final payment.
Complete source code and deployment documentation are delivered to the client on final payment.
1000xdev retains the right to reference the project as a portfolio case study (with client approval).
Third-party libraries (React Native, Node.js packages, etc.) are subject to their respective open-source licences.
Future Enhancements

Growth Roadmap — What Comes After MVP

The MVP architecture is designed to support the full OTT product roadmap. Stage 2 and Stage 3 features extend the existing platform without a rebuild.

Stage 2 — Platform Maturity

1

DRM Protection — Widevine (Android) + FairPlay (iOS) for enterprise-grade content piracy prevention

2

Smart TV Apps — Android TV and Apple TV apps for the living room

3

Offline Downloads — download episodes for offline viewing on mobile

4

User Profiles — multiple profiles per account with separate watch history

5

Parental Controls — content maturity ratings and access restrictions per profile

6

Web Platform — browser-based streaming for subscribers who prefer desktop

7

Live Streaming — live events and premiere broadcasts via Cloudflare Stream Live

Modular & Flexible Development

Each phase is independent and can be developed based on your priorities and budget. Start with Phase 1, validate with real users, then expand with features that drive the most value for your business model.

Let's Launch Your OTT Platform

The mobile OTT market is growing fast. Niche platforms with focused content and polished native apps are winning subscribers that the big streamers can't serve.

This proposal gives you production-ready iOS and Android apps — built right, built to scale, and built to launch.

Next Steps: • Review and approve this proposal • Create Apple Developer and Google Play Developer accounts • Sign the agreement and make the initial payment (₹6,00,000) • Architecture kick-off call within 48 hours • UI/UX designs delivered by Week 2 — development begins immediately after approval

Quick Details

tushar@1000xdev.com
12-week delivery — ready to begin within 48 hours of agreement

Next Steps

  • 1Review and approve this proposal
  • 2Create Apple Developer Account + Google Play Developer Account
  • 3Sign agreement and make initial payment (₹6,00,000 + GST)
  • 4Architecture and design kick-off call — within 48 hours
  • 5Figma designs delivered — Week 2
  • 6Backend and app development begins — Week 3