You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Jeff Billimek 7265b939f4 clarifying cf manifest and adding to gitignore (#123) 7 years ago
.vscode Fix #7 8 years ago
build Refactored project layout (fix: #109) (#111) 8 years ago
cmd/golang-url-shortener Refactored project layout (fix: #109) (#111) 8 years ago
config configurable app DisplayURL for the UI (#121) 7 years ago
deployments clarifying cf manifest and adding to gitignore (#123) 7 years ago
internal configurable app DisplayURL for the UI (#121) 7 years ago
web configurable app DisplayURL for the UI (#121) 7 years ago
.gitignore clarifying cf manifest and adding to gitignore (#123) 7 years ago
.travis.yml Refactored project layout (fix: #109) (#111) 8 years ago
LICENSE Rename LICENSE.md to LICENSE 8 years ago
Makefile renamed config file in bintray archive 8 years ago
README.md readme: removed wip 7 years ago

README.md

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 and Microsoft)
    • 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

Webinterface

Short URLs


Generate ShareX Configuration

Documenation

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