> how do I get started writing my app to target the Librem 5?
For commandline applications all you need is to develop for GNU/Linux. It should work pretty fine on Librem 5 too. If you want to develop GUI applications see libhandy[0], a GTK+ widget library developed by Purism for Librem 5.
If you need to, you can get motivations from https://gitlab.gnome.org/Teams/Design/app-mockups and HIG guide for GNOME is available at https://developer.gnome.org/hig/stable/