What is ViewCast?

ViewCast is browser-based church presentation software. It lets your tech team control what appears on the front-of-house screen (what the congregation sees) from a separate operator screen, in real time.

It handles three types of content:

SongsLyrics split into parts (Verse, Chorus, Bridge…) and individual slides. Searchable by title or author.
Media / SermonsImages, videos, PDFs, and PowerPoint slides. Used for sermon content or announcements.
PlaylistsA service order — an ordered list of song and media segments. You build one before each service.
ℹ️
No installation required. ViewCast runs entirely in your browser. It works on Windows, Mac, and Linux — any computer with Chrome or a modern browser.

Account setup

You need two things to use ViewCast: a ViewCast account (your login), and a Firebase project (where your data lives).

ℹ️
New in ViewCast: first-time accounts now get a one-time quick-start tutorial inside the app, and Starter Mode can keep one browser working if shared cloud sign-in is unavailable during setup.

Creating your account

1

Go to the app

Visit viewcast.github.io/app. You'll see the login screen.

2

Click "Register"

Enter your email and choose a password (minimum 6 characters). Click "Create Account".

3

Enter your Firebase config

After registering, you'll be prompted to add your Firebase project details. This only needs to be done once — it's saved to your account automatically.

Your config is saved to your account. Once you enter it on one device, it syncs automatically — you won't need to enter it again on another computer.

Firebase setup

ViewCast uses your own Firebase project to store songs, playlists, and media. This means your data belongs to you and stays in your own Google account.

Creating a Firebase project

1

Go to the Firebase Console

Visit console.firebase.google.com and sign in with a Google account.

2

Create a new project

Click "Add project", give it a name (e.g. "My Church"), and follow the steps. You can disable Google Analytics if you like.

3

Add a web app

In your project, click the web icon (</>) to add a web app. Give it a nickname. You don't need Firebase Hosting.

4

Copy your config

After registering the app, Firebase shows your config object. You'll need: apiKey, authDomain, projectId, storageBucket, messagingSenderId, appId.

5

Enable Realtime Database

In your project sidebar, go to Build → Realtime Database → Create database. Choose a location and start in test mode. Copy the database URL.

6

Enable Firestore

In the sidebar, go to Build → Firestore Database → Create database. Start in test mode. This is where songs and media are stored.

7

Paste your config into ViewCast

Back in the ViewCast app, enter each field from your Firebase config. Include the Realtime Database URL at the bottom. Click "Save & Connect".

⚠️
Test mode expires after 30 days. After that, update your Firestore and Realtime Database rules to allow reads/writes for authenticated users.

Songs

Songs are the core of ViewCast. Each song is made up of parts (Verse 1, Chorus, Bridge, etc.), and each part contains one or more slides of lyrics.

Adding songs

Songs are managed in the Admin Area. Click Admin Area in the sidebar of the main app, then navigate to the Songs section.

For each song, you'll set:

Searching for songs

When adding a segment to a playlist, click the + next to "Segments" and search by title or author. Results are ranked by match quality — exact title matches appear first.

💡
Tip: Keep each slide to 2–4 lines of lyrics maximum. Text that fits comfortably in the preview card will be readable from the back row.

Media & Sermons

Media items (called "Sermons" in the database) are collections of slides for non-lyric content. Each item can mix different file types in one deck.

Each media segment can now store playback rules too: auto-cycle delay, repeat mode, and whether videos should wait until the clip finishes before advancing.

Supported types

🖼 ImageJPG, PNG, WebP, GIF. Displayed full-screen on the FOH. Good for sermon point slides, announcements, scripture.
🎬 VideoMP4, WebM. Plays with controls on the FOH. BOH shows an icon placeholder.
📄 PDFDisplayed via iframe on the FOH. Best for single-page slides.
📊 PPTXDisplayed using Google Docs viewer. Requires the file to be publicly accessible via URL.

Adding media

In the Admin Area, go to the Media section. Create a new item with a title, then add slides one by one — each slide is a URL pointing to your hosted file. You can use Cloudinary, Google Drive (direct link), or any public URL.

💡
Cloudinary tip: ViewCast integrates with Cloudinary for easy uploads. Configure your Cloudinary credentials in Admin → Settings to get an upload button directly in the media editor.

Playlists

A playlist is your service order for the day — an ordered list of songs and media items you'll present in sequence.

Creating a playlist

Click the + button next to "Playlists" in the sidebar. Give it a name (e.g. "Sunday 15 June — Morning"). Click "Add Playlist".

Adding segments

With a playlist selected, click the + next to "Segments". Choose a type:

The segment appears in the sidebar. Click it to load the slides into the main panel.

Reordering and removing

Click the × on any segment to remove it. To reorder, remove and re-add in the desired order.

Playlists save automatically. Changes sync to the cloud in real time — no Save button needed.

Going live

When you're ready to start presenting, click Go Live in the top bar.

First time setup

1

Open the FOH screen

Click "Open FOH Screen" in the Go Live modal. A new window opens — drag it to your projector or second display and press F11 to fullscreen it.

2

Optionally open the BOH screen

Click "Open BOH Screen". This is the monitor the presenter or worship leader uses — it shows current slide, what's coming next, and the clock.

3

Click "Complete Setup & Go Live"

The status indicator turns green and shows Live. The control buttons (BG, Logo, Black) appear in the top bar.

Already open windows

If your FOH and BOH windows are already open from a previous session, clicking Go Live will skip the modal and immediately go live — no need to re-open the windows.

Stopping the presentation

Click Stop in the top bar. This closes the FOH and BOH windows and returns you to offline mode.

Presenter controls are now built in. Use the operator screen to move between cues, re-send live content, control video playback and timeline position, or start an auto-cycle loop for sermon slides and announcement decks.
⚠️
Keep the control window focused. Keyboard shortcuts only work when the operator window (or the slides panel) has keyboard focus. Click anywhere in the main slide area to restore focus if shortcuts stop working.

FOH & BOH screens

Front of House (FOH)

The FOH screen is what the congregation sees projected on screen. It displays lyric slides, media slides, the church logo overlay, and starts blank — nothing appears until you explicitly send a slide.

Back of House (BOH)

The BOH screen is the operator/presenter confidence monitor. It shows the current slide content, the next slide preview, the current song title and slide number, a live clock, and the current fade setting.

💡
BOH is optional. You can run ViewCast with only the FOH window open. The BOH is most useful when you have a worship leader or pastor who needs to see what's coming next.

Keyboard shortcuts

All shortcuts work when the slides panel has focus. Click anywhere in the main slide area to make sure it's focused.

Videos are controlled from the on-screen Presenter Controls area rather than the keyboard. Use those controls for play, pause, restart, looping, and timeline seeking.

Space or Enter
Send the focused (highlighted) slide to the FOH screen
or
Move focus to the next slide
or
Move focus to the previous slide
T
Toggle background — first press shows background only (hides lyrics), second press restores the last sent slide
B
Blackout — cuts the FOH to pure black. Press again to lift the blackout
L
Toggle the church logo overlay on/off
💡
The difference between T and B: T (background) shows your configured background image — useful for worship moments between songs. B (blackout) cuts to hard black — useful for service transitions or technical pauses. Only B is truly invisible.

On-screen controls

When live, the top bar shows additional controls alongside the keyboard shortcuts.

BG buttonSame as T — toggles between background-only view and the last sent slide.
Logo buttonSame as L — toggles the logo overlay. The logo is configured in Admin → Settings.
Black buttonSame as B — hard blackout toggle.
Fade (ms)Controls the crossfade duration in milliseconds when transitioning between slides. 0 = instant cut. 500 = half-second fade.
Song Fade checkboxWhen checked, the fade time applies to lyric slides. Uncheck for instant cuts during songs while keeping fade for media transitions.

CCLI licenses

If your songs have a CCLI license number stored, ViewCast will display it briefly on screen the first time each song is shown in a service.

How it works

Adding CCLI info to songs

In the Admin Area → Songs, edit any song and add the license field. Typically this is your church's CCLI license number plus the song's CCLI song number, e.g.: CCLI Licence #123456 | Song #7654321


Troubleshooting

I see "Firebase: Error (auth/configuration-not-found)."

This means shared cloud sign-in is not fully configured. ViewCast now offers Starter Mode on the login screen so you can keep working on the current device, then return to shared auth later if you want cross-device sign-in.

Videos start small, then jump larger

ViewCast now reserves the full FOH screen before playback starts. If autoplay is blocked by the browser, start the clip once on the FOH screen and continue using the presenter timeline controls from the operator window.

Keyboard shortcuts aren't working

The slides panel needs keyboard focus. Click anywhere in the main slide area (the dark grid). Shortcuts won't work if an input field, dropdown, or modal has focus.

The FOH screen shows nothing

The FOH starts blank by default — nothing shows until you send a slide. Make sure you've clicked Go Live and the status indicator shows Live. Then click a slide card or press Space.

Slides look different on the FOH than in the preview

The preview cards in the control window are small scaled-down versions. Typography settings (font size, weight, colour) are only applied correctly on the FOH. Check your typography settings in Admin → Settings.

The background doesn't appear on the FOH

Make sure a background image URL is set in Admin → Settings (or under your user profile). The background is applied when the app initialises — if you set it after going live, try stopping and restarting.

"Song not found" error

The song ID stored in the segment no longer matches a song in the database. This can happen if the song was deleted. Remove the segment and re-add it by searching for the song again.

Media item shows "no slides" error

The media item exists in the database but has no slides added to it. Go to Admin → Media, find the item, and add at least one slide URL.

Firebase permission errors on login

Your Firebase test mode rules have likely expired (they last 30 days). Go to the Firebase Console → Firestore/Realtime Database → Rules and update the rules to allow authenticated access:

For Firestore: allow read, write: if request.auth != null;

For Realtime Database: "rules": { ".read": "auth != null", ".write": "auth != null" }

🔒
Security note: The rules above allow any authenticated user to read and write. For a production setup, restrict rules to only your church's users. Consult the Firebase security rules documentation for more.

The FOH window didn't go fullscreen automatically

Browsers require a user interaction before allowing fullscreen. If the auto-fullscreen didn't trigger, click inside the FOH window and press F11 (Windows/Linux) or use View → Enter Full Screen on Mac.

Stop button didn't close the display windows

Some browsers block popup window management. If the windows don't close automatically when you click Stop, close them manually by pressing F11 to exit fullscreen first, then close the tab/window.