#music #markdown

bin+lib bard

Creates PDF and HTML songbooks out of easy-to-write Markdown sources

12 releases (stable)

2.0.1 Jul 1, 2023
2.0.0-alpha3 Jun 30, 2023
2.0.0-alpha1 Aug 13, 2022
1.3.0 Jul 24, 2021
0.1.0 Apr 9, 2020

#346 in Text processing

Download history 22/week @ 2023-10-26 6/week @ 2023-11-02 1/week @ 2023-11-09 19/week @ 2023-11-16 13/week @ 2023-11-23 26/week @ 2023-11-30 13/week @ 2023-12-07 13/week @ 2023-12-14 27/week @ 2023-12-21 12/week @ 2023-12-28 1/week @ 2024-01-04 18/week @ 2024-01-18 25/week @ 2024-01-25 26/week @ 2024-02-01 32/week @ 2024-02-08

101 downloads per month

Apache-2.0

10MB
7K SLoC

bard

crates.io CI

Markdown → songbooks.

bard is a songbook compiler that reads Markdown files and produces songbooks in PDF, HTML, and Hovorka.

bard reads files like this:

# Wild Mountain Thyme
## Irish & Scottish traditional

1. Oh the `G`summer `C`time `G`has come
And the `C`trees are sweetly `G`bloomin'
And the `C`wild `G`mountain `Em`thyme
Grows `C`around the `Am`bloomin' `C`heather
Will ye `G`go `C`lassie `G`go?

> And we'll `C`all go `G`together to pull `C`wild `G`mountain `Em`thyme
All `C`around the `Am`bloomin' `C`heather, will ye `G`go `C`lassie `G`go?

... and creates output like this:

example-output

Check out the Example PDF from the Example project.


Getting Started


Features

  • bard is a command-line tool
  • Project-oriented: A single bard.toml defines inputs, outputs and other configuration
  • Easy-to-use source format: Markdown
  • Output formats:
    • PDF via TeX
    • HTML
    • Hovorka XML
    • JSON and XML for machine processing
  • Transposition and notation conversion
    • Optional auto-generated second chord set
  • Templating: Outputs are fully customizable with Handlebars templates

Code Contributors

cotributors

Dependencies

~28–72MB
~1M SLoC