Skip to content

A collection of Go based applications for fun and non-profit

License

Notifications You must be signed in to change notification settings

joergjo/go-samples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A collection of Go based applications for fun and non-profit

Gopher

This repo contains various Go applications that I have ported from other development stacks (typically demo applications that I have found useful over the years) or small, yet useful applications I have developed myself. All samples use Taskfiles as simpler to use alternative to Makefiles and allow you to build the app, run tests, create a container image etc. Using Taskfiles isn't required to use these samples, but if you're new to Go will they help you to get started quickly without having to know the Go toolchain, the Docker CLI etc.

Table of contents

  1. booklibrary: This a port of Addy Osmani's venerable booklibrary API found in the Book Developing Backbone.js Applications originally written in JavaScript for Node.js. The Go version makes use of chi to implement as RESTful resource, the official Mongo driver for Go, and exposes Prometheus metrics.

  2. kubeup: This is a webhook that listens for Azure Kubernetes Service events received from Azure Event Grid built using the CloudEvents Go SDK. This allows you to be notified of new Kubernetes versions becoming available, the start and end of rolling cluster upgrades or deprecation warnings if your Kubernetes will fall out of support. kubeup allows you to send forward these events by email, log them, and provide your own event handling logic.

    Technically, you can achieve the same with an Azure Function or a Logic App, but being able to run a 10 MB container image on a Azure Container App with scale-to-zero to me is a viable alternative.

About

A collection of Go based applications for fun and non-profit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published