ReelShort Clone · Features

ReelShort Clone Features: Catalog, Coin Unlock & VIP

The hard part of short drama is not the player. It is pricing an episode instead of a subscription and keeping one wallet honest across three clients. Here is every capability that ships, grouped by who touches it - including the parts that are preview rather than production.

Request a Live Demo →See Pricing
3 ways to unlock an episode
5 locales with RTL
6 days to deploy
Episode 12
LOCKED
COIN WALLET
REWARD 120 · PAID 400
UNLOCK · COINS
SPEND 40 · REWARD FIRST
ledger code EARN/SPEND
VIP Window
active
33
Mongoose Models on MongoDB
202
Registered API Handlers
24
Permission Modules
5
Locales, Two of Them RTL
By Role

Feature Set by Role

Every capability grouped by who actually touches it - the viewer watching an episode, the wallet deciding whether it opens, and the operator running the catalog and the economy.

V

Viewer & Player

  • Vertical episode player with sequential play
  • Categories, titles and numbered episodes
  • Episode 0 as the trailer convention
  • Banner carousel, trending, new release and coming soon rails
  • Search on title and plot with an optional genre
  • My List at series level, continue watching on the client
  • Subtitle track from a stored VTT or SRT file
  • Likes, comments capped at 400 characters, reports
W

Wallet, Coins & Rewards

  • Free episode window set from one setting
  • Coin unlock priced per episode
  • Rewarded ad unlock with a per-title daily cap
  • Auto-unlock for the rest of a title
  • Reward and purchased coins tracked apart
  • Spend draws reward coins first, promos carry an expiry
  • Seven typed ledger codes for earn and spend
  • Seven day check-in ladder, referrals and follow bonuses
O

Operator Console

  • Film category, film list and episode modules
  • Drag and drop episode reorder with relocking
  • Coin packs with bonus coins and an offer price
  • VIP plans by validity and validity type
  • Overview, user, monetization and coin analytics
  • Series and episode level reporting, order history
  • Block, comment hide and report queue
  • 24 permission modules across four actions
Compare

ReelShort vs Miracuves Clone vs Building From Scratch

The same capability, three different paths to get it.

CapabilityOriginal ReelShortMiracuves CloneBuild From Scratch
Vertical episode playerYes - proprietaryYes - sequential play, subtitles, continue watchingThe easiest part, and the part everyone starts with
Per-episode pricingYesCoin price per episode, free window set globallyRequires an entitlement model before a player
Three ways to unlockYesCoins, rewarded ad, VIP window, plus auto-unlockFour inputs resolved at read time - easy to get subtly wrong
Two-balance coin walletYesReward vs purchased tracked apart, promos expire, spend draws reward firstWhere most builds leak money or double-credit
Typed ledgerYesSeven typed codes across earn and spendUsually added after the first reconciliation problem
Rewards ladderYesSeven day streak, ad tasks, referrals, follow and email bonusesRetention machinery, always underestimated
Right-to-left layoutVaries by marketFive locales, RTL for Hebrew and Arabic across all three clientsA retrofit that touches every screen
Operator consoleInternalCatalog, economy, moderation, staff and settings, 24 permission modulesThe single largest hidden line item
Source code ownershipN/AFull ownership, self-hostedFull ownership (you are building it)
Content licensingHeld by ReelShortNot included - you supply and license your catalogNot included - you supply and license your catalog
PriceN/A$3,399 one-timeSix figures and a year, typically

The demo catalog that ships is original seed material with royalty-free stills, not licensed third-party drama. Your catalog and its rights are yours to arrange - see the Development Company page for what that means in practice.

End to End

How It Works, End to End

Short drama looks simple from the outside. Here is the path a viewer and their coins actually take.

1

Discover and Watch

  • Land on rails: banner, trending, new release, coming soon
  • Coming soon titles are excluded from the other rails
  • Open a title, watch Episode 0 as the trailer
  • Episodes inside the free window play immediately
  • Continue watching is held in browser storage
2

Hit the Wall, Choose a Tender

  • Access is decided at read time from four facts
  • Is the episode locked, is it inside the free window
  • Does the viewer hold an active VIP window
  • Does a per-user unlock row already exist
  • Coins, a rewarded ad or auto-unlock all write that same row
3

Earn, Buy and Come Back

  • Spend draws reward coins before purchased coins
  • Promotional coins carry an expiry window
  • Coin packs and VIP plans run through hosted checkout
  • Seven day check-in ladder builds a streak
  • Every movement writes a typed ledger entry

Because entitlement is one row rather than a per-client rule, an episode unlocked with coins on the web app is already unlocked in the Flutter store build. The clients never disagree because they never decide.

Rationale

Every Feature Earns Its Place

Nothing here is on the list because it demos well. Each capability exists because leaving it out breaks something specific.

CapabilityWhy it is not optional
Two balance types in one walletBecause promotional coins and paid coins are not the same liability. Mixing them means you cannot expire a promo without taking money the viewer actually paid for.
Spend draws reward coins firstBecause consuming free inventory before paid inventory is what makes a rewards ladder affordable instead of a permanent discount.
Seven typed ledger codesBecause "balance changed" is not an answer when a viewer disputes a spend. Typed entries are what let you reconstruct why.
Unlock resolved at read timeBecause caching an entitlement is how a viewer ends up locked out of an episode they paid for, on a different device.
Unique compound keys on unlock rowsBecause a double-tap on a slow connection should not charge twice for the same episode.
Episode 0 trailer conventionBecause a free sample inside the same data model costs nothing, where a separate trailer system costs a subsystem.
Hosted checkoutBecause no card number reaching your database removes the single largest compliance surface a small operator has.
Magic-byte upload inspectionBecause an operator uploading a renamed executable is an ordinary accident, not an attack, and it still has to be discarded.
RTL across all three clientsBecause retrofitting right-to-left after launch touches every screen, and Hebrew and Arabic markets are underserved precisely because most platforms skip it.

The Technology Behind the Features

A Vite and React consumer web app served as a static single page application, a Next.js 14 operator console on its own subdomain with client-side ApexCharts, and a Flutter GetX store build for iOS and Android. All three talk to one Node.js and Express service running roughly 202 registered handlers across a client router and an admin router, behind nginx and PM2. State is 33 Mongoose models on MongoDB: categories, titles and numbered episodes carrying lock state and coin price; reward and purchased balances against a seven-code typed ledger; unique compound keys on the per-user unlock rows; and indexes on active titles, release date and ledger timelines. Uploads run through a storage switch across local, S3 and Spaces with magic-byte inspection, and cron jobs reset the ad counters at midnight.

Honest Readiness

What Is Not Included in the Base Package

Every capability above is built and demonstrable in the live demo. These are not - and the hub says so too, because it is the kind of thing that surprises buyers otherwise.

Stated against the feature, not implied away

Web ad unlock is a simulated timed preview, not a live ad network
Store-build ads run through AdMob with your own unit IDs - an integration step
Processor-side purchase verification for store and card gateways is scheduled work
Coin cash-out is wallet architecture only - no consumer flow, payout desk or bank rails
Some later Hindi, Arabic and Spanish web strings fall back to English
Password hashing currently uses reversible encryption rather than a slow hash
Request rate limiting is not bundled
CORS defaults open
The client settings payload is unscoped
Staff permissions are enforced in the console rather than on every route

The last five are named in the platform's own VAPT reference as a labelled hardening backlog rather than buried, and they are closed with you at deployment. We would rather you saw the list before you bought than after.

Development Company

See how Miracuves compares to scripts, freelancers and agencies

The deployment process, the content-licensing reality, and what to check before you hire anyone - on the Development Company page.

See the comparison →
FAQ

Frequently Asked Questions

How does episode unlocking actually work?
Access is decided at read time from four facts: whether the episode is locked in the catalog, whether its number falls inside the free window, whether the viewer holds an active VIP window, and whether a per-user unlock row already exists. Coins, a rewarded ad or auto-unlock all write that same row, so the entitlement is identical however it was earned.
What is the difference between reward coins and purchased coins?
Reward coins come from the ladder, ads, referrals and bonuses and carry an expiry window. Purchased coins come from a coin pack and do not expire. Spending always draws reward coins first so promotional inventory is consumed before money the viewer actually paid, and both roll into a single displayed total.
Do the ads actually pay?
On the store build, yes, through AdMob with your own unit IDs, which is an integration step. On the web surface the ad unlock is a simulated timed preview rather than a live ad network, so it demonstrates the flow without generating revenue. We state this plainly because it is the kind of thing that surprises buyers otherwise.
What languages does the interface support?
Five locales ship: English, Hebrew, Hindi, Arabic and Spanish, with right-to-left layout for Hebrew and Arabic across the consumer web app, the store build and the operator console. The console also carries an app language editor so you can change client copy without a rebuild. Some later Hindi, Arabic and Spanish web strings fall back to English, so completing that copy is a configuration task.
Can viewers cash out their coins?
Not out of the box. The withdrawal method and request models are in the schema with minimum thresholds in settings, so the wallet architecture supports it, but the consumer flow, the operator payout desk and the bank rails are advanced setup. We sell it as wallet architecture that can support cash-out, never as a live payout product.
Does an unlock carry across the web app and the store build?
Yes. The unlock is a single per-user row in one database rather than a rule each client evaluates for itself, and all three surfaces read the same API. An episode opened with coins on the web is already open in the Flutter build, and a VIP window bought in the app applies on the web immediately. The clients never disagree because they never decide.

See exactly what you are getting - before you commit

Request a working demo of the catalog, the unlock paths and the operator console, or check exact pricing.

Ready to launch your own short-drama platform?

Deploy in 6 days with the catalog, the coin wallet, the rewards ladder and the operator console included, full source code ownership.

Talk to Us →
Miracuves · ReelShort Clone Solution Feature set, stats and readiness caveats cross-verified against the live hub, 2026-08-14