Нема описа

Frederic G. MARAND ea64784e28 Make alias generation actually work for base strategy. пре 10 година
data ea64784e28 Make alias generation actually work for base strategy. пре 10 година
doc ecf5044df5 Working alias generation, inserts into DB, some integration tests. пре 10 година
storage ea64784e28 Make alias generation actually work for base strategy. пре 10 година
strategy ea64784e28 Make alias generation actually work for base strategy. пре 10 година
url ea64784e28 Make alias generation actually work for base strategy. пре 10 година
web 6484db1121 Some structural and commenting cleanup. пре 10 година
.gitignore ecf5044df5 Working alias generation, inserts into DB, some integration tests. пре 10 година
LICENSE.txt 5ba5ac0c61 First commit: README, GPLv3 license, .gitignore. пре 10 година
README.md ecf5044df5 Working alias generation, inserts into DB, some integration tests. пре 10 година
kurz.go 6484db1121 Some structural and commenting cleanup. пре 10 година

README.md

 #    #  #    #  #####   ######
 #   #   #    #  #    #      #
 ####    #    #  #    #     #
 #  #    #    #  #####     #
 #   #   #    #  #   #    #
 #    #   ####   #    #  ######

Kurz is yet another URL shortener/aliaser.

  • built as a Go data model API, for internal site use as well as public use
  • web front end separate from data logic
  • multiple aliasing strategies. provided:
    • identity
    • 32-bits hexa string, leading 0s omitted
    • manual selection
    • easy to extend, by registering additional AliasStrategy objects
  • supporting
    • vanity domains
    • relative paths (API only, no Web UI), for use within web sites
    • "slug"-type multipart aliasing for SEO
  • usage statistics
  • some tests available

It is currently available under the General Public License version 3 or later.

Using Kurz

The main Kurz command show how to initialize the package and access statistics.

You can find usage examples in strategy_test.go:

  • TestBaseAlias() shows how to generate aliases
  • TestUseCounts() show how to query strategy statistics

Running tests

Currently, only the strategy package has tests, and these need some setup, as they touch the database:

  • either redefine the credentials in strategy_test.go#initTestStorage()
  • or create a database with privileges appropriate for them
  • or send a PR submitting a better DB initialization mechanism for tests