Skip to content

URL Shortener written in Golang using Bolt DB or Redis. Provides features such as Deletion, Expiration, OAuth and is of course Dockerizable.

License

Notifications You must be signed in to change notification settings

sirg2/golang-url-shortener

 
 

Repository files navigation

Golang URL Shortener

Build Status GoDoc Go Report Card Coverage Status License Download Docker Pulls

Main Features

  • URL Shortening
  • Visitor Counting
  • Expirable Links
  • URL deletion
  • Multiple authorization strategies:
    • Local authorization via OAuth 2.0 (Google, GitHub, Microsoft, and Okta)
    • Proxy authorization for running behind e.g. Google IAP
  • Easy ShareX integration
  • Dockerizable
  • Multiple supported storage backends
    • High performance local database with bolt
    • Persistent non-local storage with redis

Short URLs


Generate ShareX Configuration

Documentation

Why did you built this

Only because I just want to extend my current self hosted URL shorter (which was really messy code) with some more features and learn about new techniques like:

  • Golang unit testing
  • React
  • Makefiles
  • Travis CI
  • Key / Value databases
  • Dockerfile and Docker Image Creation

About

URL Shortener written in Golang using Bolt DB or Redis. Provides features such as Deletion, Expiration, OAuth and is of course Dockerizable.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 66.9%
  • JavaScript 27.1%
  • HTML 3.3%
  • Makefile 1.7%
  • Other 1.0%