Homepage

Accessibility links

  • Skip to content
  • Accessibility Help
BBC Account
Notifications
  • Home
  • News
  • Sport
  • Weather
  • iPlayer
  • Sounds
  • Bitesize
  • CBeebies
  • CBBC
  • Food
  • Home
  • News
  • Sport
  • Reel
  • Worklife
  • Travel
  • Future
  • Culture
  • TV
  • Weather
  • Sounds
More menu
Search BBC Search BBC
  • Home
  • News
  • Sport
  • Weather
  • iPlayer
  • Sounds
  • Bitesize
  • CBeebies
  • CBBC
  • Food
  • Home
  • News
  • Sport
  • Reel
  • Worklife
  • Travel
  • Future
  • Culture
  • TV
  • Weather
  • Sounds
Close menu

OPEN__SOURCE

Menu
Menu
  • Home
  • Projects
    • Current
    • Archive

Current Projects

The following BBC projects have been made available under a variety of open source licenses. These projects are all actively maintained by software teams in the BBC and used internally.

A

a11y-tests-web

a11y-tests-web is a Node JS based tool that uses bbc-a11y and Google Lighthouse to run a suite of automated tests to test accessibility across a set of webpages, defined in a config file.

A

adhere

Plays TTML2 Audio Description files over HTML5 video.

A

audiowaveform

A command-line application that renders audio waveform images or generates waveform data from MP3, WAV, Ogg Vorbis, or FLAC format audio files

A

aws-lambda-runner

Runs AWS Lambda functions locally, usually to test them off-line.

B

bbc-a11y

bbc-a11y is a javascript based tool for checking a URL or set of URLs for compliance with the BBC accessibility guidelines. While still a work in progress, it is stable and can be used.

C

Color-Contrast-Checker

An accessibility checker tool for validating the color contrast based on WCAG 2.0 and WCAG 2.1 standard.

 logo

device api

DeviceAPI is a collection of ruby gems that make working with physical devices easy and consistent. DeviceAPI provides common utilities such as device detection and identification, and useful helpers for installing applications and identifying problems with devices.

D

Digital Public Space prototype

A prototype semantic aggregation and search platform.

D

docbook-html5

XSLT to transform DocBook-XML 5 to (X)HTML

G

gel

GEL (the Global Experience Language), is the BBC’s shared design framework. A system of reusable interaction patterns used to assemble the BBC’s entire online output.

 logo

Hive-CI

Hive CI is a continuous integration platform for on-device testing. We use Hive CI and its numerous components and libraries across many projects in the BBC.

 logo

Image Session Analyser

ISA is a ruby gem for comparing screenshots over a testing session. We use it in combination with the DeviceAPI gem to capture screenshots during video playback tests and confirm that video is actually being played.

I

Inside Acropolis

A guide to the Research & Education Space for publishers and developers

L

liblod

A linked open data client library.

L

libsparqlclient

A SPARQL 1.1 client library.

 logo

microbit

A pocket-sized codeable computer with motion detection, a built-in compass and Bluetooth technology.

 logo

Morty-Docs

A library to enable markdown documentation to be generated as a static website, to allow users to consume content in an easily accessible format.

 logo

mosromgr

A Python library for managing TV and radio running orders

 logo

object-based-media-schema

The Object Based Media Schema was created by BBC R&D to model interactive and personalised media experiences.

P

Painting By Numbers

The visual style & mark-up guide for the Research & Education Space

 logo

Peaks.js

A client-side JavaScript component to display and interact with audio waveforms in the browser

P

process-helper

Provides a wrapper around external processes

 logo

psammead

Psammead - BBC Component Library

R

RemArc

This project is the open source version of BBC Reminiscence Archive which is a web app which lets users navigate to and view audio, video and image content, for the purpose of triggering memories in people with dementia. An admin system is also included, enabling the upload of media assets, choosing themes, and managing metadata. Please see the installation and administration instructions for further info

 logo

should it

Should It? - The programming language agnostic 'Behaviour Driven Development' framework.

 logo

simorgh

Simorgh is an open source single-page application built on React and Express. As an isomorphic app it serves HTML renders of many BBC pages, such as news articles and indexes, hydrating them on the client into a full SPA.

S

sqs-consumer

Build SQS-based applications without the boilerplate..

 logo

storyplayer

StoryPlayer is BBC R&D's object based media player. It plays back experiences described using BBC R&D's object based media schema, which models interactive and personalised media experiences.

 logo

TAL

TAL is a javascript framework that simplifies TV application development. It's used by all our TV apps at the BBC and enables us to make our apps available across a wide range of different Connected TVs, IPTVs, games consoles, set top boxes and Blu-ray devices in the market.

 logo

TuringCodec

Turing codec, an H.265/HEVC optimised software video encoder and decoder

T

twine

A linked open data workflow engine.

V

vc-2

VC-2 is a royalty-free, high-quality, and low-latency video codec specified in SMPTE ST 2042-1. It is an intra-frame video codec that uses wavelet transforms and is aimed at professional applications. This reference implementation is developed and maintained by BBC R&D.

V

VC-2 Conformance Testing Software

A comprehensive suite of standards conformance tests for implementations of the VC-2 video codec.

V

VideoContext

An experimental video composition and sequencing library for the web.

 logo

viewporter

Viewporter is a simple in-browser tool created by developers at BBC Sport for checking how a responsive website responds to different screen sizes.

 logo

wraith

Wraith is a responsive webpage screenshot comparison tool designed for visual regression testing. It uses headless browsers, Imagemagick and Ruby to enable fast feedback for front end changes that reduces manual testing and user facing bugs.

Z

zenoss sync

Keeps two separate Zenoss event consoles in sync and provides information on the sync level achieved. In addition you can report on the Zenoss collector device totals, device differences and device uniqueness between two seperate Zenoss systems.

Contribute

We'd love for you to get involved. Take a look at the projects here, or head over to Github to start contributing.
BBC on Github

Get in touch

Get in touch if you have any questions about Open Source at the BBC or want to get involved via our Twitter. @BBCOpenSource

Join the team

Want to join the design & engineering team? Check out the careers page below. BBC Careers

Blog

Read all about what we are up to over on the Design and Engineering blog. D&E Blog

Explore the BBC

  • Home
  • News
  • Sport
  • Weather
  • iPlayer
  • Sounds
  • Bitesize
  • CBeebies
  • CBBC
  • Food
  • Home
  • News
  • Sport
  • Reel
  • Worklife
  • Travel
  • Future
  • Culture
  • TV
  • Weather
  • Sounds
  • Terms of Use
  • About the BBC
  • Privacy Policy
  • Cookies
  • Accessibility Help
  • Parental Guidance
  • Contact the BBC
  • Get Personalised Newsletters
  • Advertise with us
  • AdChoices / Do Not Sell My Info
Copyright © 2022 BBC. The BBC is not responsible for the content of external sites. Read about our approach to external linking.