Skip to main content

How GreyScreen works

GreyScreen is a streaming service. You open it on a phone, a TV or a browser, choose something to watch, and the film starts. Behind that simple sentence there are four kinds of machinery: the screens you touch, the catalogue that answers what exists, the library that stores the films, and the workshop that prepares every new title.

This page is the version without port numbers. The technical architecture has the service-by-service view; the interactive map lets you switch between them.

The cast​

PieceWhat it isWhat it does for you
YouPhone, TV or browser.Browse without an account; sign in when you want to watch or save something.
The GreyScreen appThe website, the phone app and the TV app.Show the catalogue, the trailer, the player and your plan.
CatalogueThe live list of films and series.Only titles that are completely ready appear here.
Your accountWho you are and what your plan allows.Decides whether playback is allowed when you press play.
Streaming serverThe part that sends video.Picks a quality level and keeps the picture moving as your connection changes.
Video libraryGreyScreen's own storage.Holds every quality of every title, from 144p to 4K, plus trailers.
Encoding workshopA temporary machine that prepares uploads.Turns one master file into all the qualities a player might need.
Payment providersStripe for cards, Flutterwave for mobile money.Take the payment and tell GreyScreen to activate the plan.
GreyScreen studioThe internal back office.Where the team adds a title, its artwork and its video files.

Follow the map​

GreyScreen · global architecture

How GreyScreen works

A guided view of what happens between the moment you open GreyScreen and the moment the video plays. Click any block to read what it does.

Take a tour
YOUGREYSCREENTHE CLOUDopenbrowsetitlespress playvideo playschecks your planreads the filmwrites every qualitysends a new titlepublishes the listingpaysactivates the planYOUYouPhone · TV · browserSCREENThe GreyScreen appThe screens you useLISTCatalogueEverything you can watchPLANYour accountSign-in and planPLAYStreaming serverDelivers the videoLIBVideo libraryThe finished filesLABEncoding workshopPrepares each titlePAYPayment providersCards and mobile moneySTUDIOGreyScreen studioPublishing new titles
Zoom 100 percent

Click any block for a plain-language card. The map is not a static picture: you can zoom, pan, open it full screen and download it. Use Take a tour to walk browsing, watching, subscribing or publishing one step at a time.

The four journeys​

Browsing does not need an account​

The catalogue is public. So are the movie and series lists and every trailer page. You can open a title, read its details and play the trailer before signing in. The platform deliberately keeps the catalogue readable without identity so that search engines and first-time visitors see the product.

Watching checks two things​

When you press play, the player asks for the film and the app checks that your account has an active plan. The streaming server then reads the correct quality from the library and sends it in small segments. If your connection drops, the player asks for a lower quality rather than stopping.

There is no DRM. Access control is the client-side entitlement check plus the fact that the video URL is not listed publicly. That is a known limitation, documented in Security notes.

Subscribing moves through a provider​

GreyScreen never sees your card number or your mobile-money PIN. Cards go through Stripe; mobile money goes through Flutterwave. The provider handles the payment and calls GreyScreen back on a signed webhook. Only then does the subscription become active. The TV does not take payments — it tells you to pay on your phone and pair the account.

Publishing waits for readiness​

An upload is not a publication. The team uploads two artwork crops, a trailer and the feature file. The artwork is converted immediately; the video is queued for the encoding workshop, which runs only while there is work. The title becomes visible only when the encoder has finished, the trailer has at least one resolution, and the artwork exists. Until then it is staged, not live.

The full sequence is in Upload to publish.

Two views of the same system​

The same platform is drawn twice:

  • Explained — the product view on this page and in the map. It names what a viewer sees.
  • Technical — repositories, ports, protocols and key files. It is the version an engineer uses while changing a flow.

Both share the same controls and the same detail cards. On the architecture page you can switch between them, and compare them with the Mermaid diagrams generated from the same model.

What can go wrong​

The honest list matters more than the marketing one:

  • The test stack shares the production Firebase project. Test isolation is a deployment profile, not a separate database.
  • The legacy customer endpoints (/signup, /login, most /users/*) are not authenticated; they trust a client-supplied user ID. Do not build new features on them.
  • TV pairing is world-readable and writable in the Realtime Database today, and the TV applies paired account data without server verification.
  • There is no DRM, and there are no automated tests gating deploys.

These are tracked, with mitigations, in Security notes.