Working offline — how SceneMatch keeps a production on your device

SceneMatch saves every page you open onto your device, so the script, looks and continuity photos stay readable with no signal. Cache a shooting day before you travel.

Sets are where connectivity goes to die. A stage with a metal roof, a basement location, a tunnel, a field two valleys from the nearest mast, a hotel WiFi that four departments are already sharing. The moment that matters most — a continuity question at the top of a take — is reliably the moment the bars disappear.

So SceneMatch does not assume a network. Being offline is a normal way to use it, not a fault it recovers from: the production lives on your device, and a day can be worked through start to finish with the radio off.

Everything you open is kept

There is nothing to switch on. As you move around a production, every page you open is written to a local copy on that device — characters, scenes, looks, the screenplay, shooting days, props, vehicles, animals, wardrobe, set dress, sets, locations, documents and the team list.

Open a page a second time and it renders from that local copy immediately, then quietly checks the server for changes in the background. That is why the app feels faster the more you use it — and it is the same mechanism that keeps it working when the check cannot happen at all.

Images follow the same rule. Thumbnails, continuity stills, character and actor portraits and production posters are all kept once they have been shown to you, in a store of their own kept separately per production. A look you scrolled past this morning is still there this afternoon in the tunnel.

The catch is in the word "open". Caching is a by-product of browsing, not a background download. A scene you have never looked at on this device was never saved on it, so with no signal that page simply comes up empty — and starting the app fresh at an address it has never been given before lands on the Offline screen. Which is exactly the problem the next section solves.

Cache a shooting day before you leave

When you know where tomorrow is going, you do not want to rely on having browsed the right pages.

Open Shooting days, find the day, open its menu and choose Offline. A progress dialog opens and pulls the whole day down in four passes:

PassWhat it fetches
Retrieving structureThe production skeleton — characters, scenes, episodes, looks, shooting days, warehouse items, sets, locations, documents and members
Retrieving charactersCharacter and actor details, their portraits and their look images
Retrieving scenesThe scene images and per-character continuity stills
Loading imagesEvery image above, actually fetched and stored at each size it is displayed in

It is scoped to the day, not to the whole production: the scenes on the day's units, plus the scenes connected to them through continuity timelines — so you get the scene before and the scene after, which is what a continuity question usually turns out to be about.

Three practical notes:

  • You have to be online to start it. The Offline action is greyed out with no signal, which is the one time it would be useless. Cache the day the night before, on the hotel WiFi, not in the van.
  • Leave the dialog open until it finishes. The last pass is the slow one — it is downloading real photographs — and closing early stops it.
  • Do it per device. The copy lives in the browser you did it in. Caching a day on your iPad does nothing for your phone.

What you can do with no signal

Anything that only needs reading works. Anything that needs the server to agree waits.

With no signal
Read the screenplay, scenes, characters, looks, continuity notes and shooting daysWorks
View cached photos — stills, portraits, postersWorks
Search the productionWorks — search runs against the local copy
Show and hide annotation layersWorks
Take or add photosWorks — they queue on the device
Create, edit or delete anythingWaits — the buttons are hidden until you are back
Invite crew, export a PDF, upload a screenplay, play a scene aloudWaits

Photos are the important one. On set you are usually not editing the breakdown — you are shooting continuity stills, and those are the thing that must not wait for a signal. Add them as you normally would. Each one is stored on the device with a small wifi-off badge, and the moment connectivity returns the queue starts moving on its own: no button to press, no list to remember, and closing the app or reloading the page does not lose them.

Everything else is hidden rather than broken. If the New, Edit or Export button is not where you expect it, that is the app telling you it currently has no way to save what you would do — not a permission problem.

How SceneMatch decides you are offline

There is an Offline badge in the header, and it is worth knowing that it does not simply mirror the phone's own connection icon. That icon reports whether a network interface is up, which on set is wrong in both directions: a VPN or a captive portal can show a perfectly healthy connection that reaches nothing, and a webview coming back from the background can insist you are offline on a device that is fine.

So SceneMatch decides by evidence instead. A request that came back from the server proves you are online. A request that never completed is a suspicion, checked with one cheap probe before anything is locked down. It is why the app stays fully usable on a production VPN, and why it does not offer you an action it cannot actually perform on a hotel WiFi that has stopped forwarding.

The things that are not obvious

The local copy is per browser, per device. It is not your account following you around. A day cached on the iPad is on that iPad.

Losing access removes the copy. When you leave a production, or it is deleted, or your access is withdrawn, its local data and its images are dropped from the device the next time the app runs. Offline access is not a way around being removed from a production.

Storage is finite, and the oldest photos go first. Browsers cap how much a site may keep. When the cap is reached, SceneMatch frees room from the production you are least likely to need — a wrapped show you have not opened in weeks — before touching the one in front of you. Anything dropped is re-fetched next time you have signal, so nothing is lost; it just is not there while you have none.

Cache the day again if the day changed. The copy is a snapshot. If the 1st AD re-orders tomorrow while you are already out of signal, you are reading yesterday's plan. When you get a bar back, the app catches up by itself — but if a day was rewritten late, run Offline on it once more before you head out.

Open SceneMatch