At first I thought this was going to just be a go program handling BGP data. And then I saw they injected the routes into the local windows FIB. Somewhere a CCIE is crying silently, and doesn't know why. I get that it works, but something about this feels...deeply wrong :)
Running BGP on servers is incredibly useful though, especially on things like proxies and loadbalancers. For instance, running services on loopback/dummy interfaces and announcing those IP's with BGP to the core network makes implementing anycast really, really easy.
For any amount of reasonable distinction of "servers" and "routers", you should never need a FIB install on a server. There are good reasons to keep these functions separate (most prominently, address ownership/binding issues with services that are frequently not designed to deal with multiple interfaces/route choices.)
NB: this is not about physical devices. VMs/containers on your host are frequently "servers" while the hypervisor is a "router".