/bulletinbird

BulletinBird is a bird of the day server.

Primary LanguageGoBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

BulletinBird - a small, friendly 'bird of the day' server

BulletinBird screenshot

BulletinBird is a small app that serves up a new bird of the day every morning.

Features

BulletinBird provides a REST API for getting data about a the randomly-selected bird of the day. The data is obtained from the Cornell Lab of Ornithology's taxonomy guide and includes:

  • Common name
  • Scientific name
  • Species characteristics
    • Habitat
    • Diet
    • Nest type
    • Behavior
    • Conservation status

BulletinBird also provides static images for display on IoT-type devices. Currently, BulletinBird generates images specifically for the Pimoroni Inky Impression 4 and the AdaFruit Magtag.

The static images include:

  • Scientific illustration
  • Icons for species characteristics
  • QR code that links to the Cornell Ornithology page for the bird of the day

Prerequisites

Library Dependencies

BulletinBird uses these awesome Go libraries:

Support

BulletinBird builds and runs on MacOS (tested on 13.4.1 Ventura) and Linux (tested on Raspbian Bullseye and Armbian Bullseye). It probably runs on any *nix, but has not been tested. Windows is anybody's guess.

Cloning and Compiling

Clone the repository

$ git clone https://github.com/13-bit/bulletinbird
$ cd bulletinbird

Build and run

$ mage build
$ ./build/bulletinbird

Alternatively, you can install it in $GOPATH/bin

$ mage install

Fonts

BulletinBird uses Google's Pacifico and IBM's Plex font, both of which are licensed under the Open Font License. Copies of the license are included with the fonts.