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.
 
 
 
 
 
 
Max Schmitt 3c249d5bb9 fix: bundling of static assets 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 Okta Integration - Bring Okta OAuth as an available option (#128) 7 years ago
deployments clarifying cf manifest and adding to gitignore (#123) 7 years ago
internal fix: compilation: switched to packr2 7 years ago
web fix: build error due react-router-dom 7 years ago
.gitignore fix: compilation: switched to packr2 7 years ago
.travis.yml fix: bundling of static assets 7 years ago
CONTRIBUTING.md Create CONTRIBUTING.md 7 years ago
LICENSE Rename LICENSE.md to LICENSE 8 years ago
Makefile fix: bundling of static assets 7 years ago
README.md Okta Integration - Bring Okta OAuth as an available option (#128) 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, 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

Webinterface

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