Skip to content

Gudstjänst – Open Production Toolkit contains tooling, workflows and reference implementations developed in close proximity to Swedish public service production practices.

License

Notifications You must be signed in to change notification settings

FiLORUX/the-public-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

The Public Service

MIT Licence CI TypeScript Cloudflare Workers PRs Welcome

Open-source production toolkit for broadcast workflows

Build reliable, deterministic systems for live television and media production.

Quick Start · Documentation · Contributing


Features

  • Normalised Data Architecture — Single source of truth with dynamic views
  • Real-time Sync — Bi-directional synchronisation between Google Sheets and Supabase
  • Edge-First — Cloudflare Workers for low-latency validation and conflict handling
  • Touch-Optimised Studio View — React PWA designed for iPad use in production environments
  • API-Ready — REST endpoints for Companion, HyperDeck, vMix, and custom integrations
  • Broadcast-Grade Reliability — Built with deterministic behaviour and clear failure modes

Architecture

┌─────────────────────┐     ┌─────────────────────┐
│   Google Sheets     │     │   Studio PWA        │
│   (Familiar UI)     │     │   (Touch Control)   │
└─────────┬───────────┘     └─────────┬───────────┘
          │                           │
          ▼                           ▼
┌─────────────────────────────────────────────────┐
│              Cloudflare Worker                  │
│         (Validation · Conflict Handling)        │
└─────────────────────┬───────────────────────────┘
                      │
                      ▼
┌─────────────────────────────────────────────────┐
│                   Supabase                      │
│      (PostgreSQL · Realtime · Audit Trail)     │
└─────────────────────────────────────────────────┘

Quick Start

Option 1: Google Sheets Only

  1. Create a new Google Sheet at sheets.google.com
  2. Open Extensions > Apps Script
  3. Copy the .gs files from this repository
  4. Run System > Bootstrap Database from the custom menu

See QUICKSTART.txt for detailed instructions.

Option 2: Full Stack (Sheets + Supabase + Workers)

git clone https://github.com/FiLORUX/the-public-service.git
cd the-public-service

# Deploy the sync worker
cd worker
npm install
npx wrangler deploy

# Run the studio app locally
cd ../studio-app
npm install
npm run dev

See DEPLOYMENT.md for production deployment.


Documentation

Document Description
QUICKSTART.txt Get up and running in minutes
ARCHITECTURE-2026.md System design and data flow
API.md REST endpoint reference
DEPLOYMENT.md Production deployment guide
FAQ.md Common questions and troubleshooting

Built With

Component Technology
Data Layer Google Apps Script, Supabase (PostgreSQL)
Edge API Cloudflare Workers, TypeScript
Studio App React 18, Vite, PWA
Integrations Bitfocus Companion, BMD HyperDeck, vMix

Contributing

Contributions are welcome. Please read the existing code to understand the conventions, then submit a pull request.

# Clone and set up
git clone https://github.com/FiLORUX/the-public-service.git
cd the-public-service

# For Apps Script development
npm install -g @google/clasp
clasp push

# For Worker development
cd worker && npm run dev

# For Studio App development
cd studio-app && npm run dev

Licence

MIT — use freely, modify freely, contribute back if you can.


Acknowledgements

  • The broadcast engineering community for decades of battle-tested patterns
  • EBU Technical for standards that make reliable systems possible
  • Everyone who believes publicly funded work should remain publicly accessible

Built for broadcast professionals

About

Gudstjänst – Open Production Toolkit contains tooling, workflows and reference implementations developed in close proximity to Swedish public service production practices.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published