Song Database

The Song Database is a program to show lyrics on a digital projector for worship in a congregation.


  • the program runs on nearly all systems because it is a Java application
  • Dual Head (which means two graphic cards are required, or one with two outputs); this enables the user to have one control monitor to display the database and the presentation control while the seperate projection screen shows only the text the congregation has to see – no confusion, very professional
  • show/hide the song title on foils
  • guitar chords can be included in the database, but will not be shown when presenting songs – they are useful when printing song sheets for the band or when using a separate band presentation monitor
  • english user interface
  • fonts and colors are customizable
  • you can add remarks to every song
  • find/filter songs easily – just type a few characters of title or lyrics
  • show the song beginnings in the song list (additionally to the song title) – you can find songs faster in spontaneous worship sessions
  • licensed under GPL – free to use and change

Why should you use Song Database and not Powerpoint?

  • the user interface is clean and intuitive
  • the lyrics are scrollable (animated)
  • you can configure two separate presentation screens: one for the congregation (only text) and one for the band (text and chords) – hint: you need three graphics outputs to implement this setting
  • database format is not binary, but XML – you can easily modify it by hand, synchronize it using any cloud service or even put it into a Git repository (producing nice diffs for your edits)
  • the days on which a song is presented are counted (in a separate statistics file)

Install & Run

  1. Go to the latest release and download the package for your operating system (bundles for Linux and Windows available).
    • If you’re on any other OS you still can download the package, install Java 11 or newer and use the command .../path/to/java -jar .../path/to/sdb2-without-jre/bin/sdb2.jar.
  2. Extract the ZIP file to any folder.
  3. Navigate to the bin directory.
    • On Linux, start the script
    • On Windows, start the executable sdb2.exe or the batch file sdb2.bat.

You will be presented with a new, empty database which is automatically created in the directory ~/.songdatabase/songs (Linux) or %userprofile%\.songdatabase\songs (Windows) respectively – with %userprofile% being a system variable containing something like C:\Users\yourname. If you want your database (which is stored as a simple XML file) in any other place, you may add the desired location as parameter when starting Song Database, e.g. ~/mysongs.xml or sdb2.exe C:\mysongs.xml.

API access

At there’s a small project which can provide HTTP (read-only) access to a SDB database.

Source Code

You can obtain the source code at

Found a bug?

The program has evolved through more than 10 years at my church and is still not finished. If you find a bug or a missing feature, you are invited to fix it or to file an issue here.

Version 1.x (Legacy)

If you absolutely want, you can also get the Song Database 1.x binary package here (but beware, the file format is incompatible with SDB 2.x): file release system

You can obtain the source code from Github at (but you should really look at SDB2 instead).