SkillAgentSearch skills...

Tinyurl

tinyurl: a url shortening service

Install / Use

/learn @tinyurl/Tinyurl
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

TinyURL - Make Personal URL Shortening Service Easy

Build Status Go Report Card GoDoc

<p align="center"> <a href="https://adolphlwq.xyz" target="_blank"> <img src="assets/tinyurl.gif" width="700px"> <br> Live Demo </a> </p> <p align="center">a url shorten web service written by Golang, Vue and Gin.</p>

Requisites

  • Golang(1.12+)
  • MySQL/Sqlite3
  • make
  • Docker

Quick Start

  1. clone project to GOPATH
git clone https://github.com/tinyurl/tinyurl.git $GOPATH/src/github.com/tinyurl/tinyurl
  1. build binary
make
  1. change config in default.properties
  2. run binary
./tinyurl -config default.properties
  1. open index.html in frontend/ with broswer
  2. default Swagger API url is http://0.0.0.0:8877/swagger/index.html

TODOs

  • [X] validate input url format
  • [X] improve random generate string algorithm
    • [X] use math/rand.Read instead math/rand.Intn func
  • [X] use logrus replace golang log lib
  • [X] reserch wrk
  • [X] add test case
  • [ ] Backend
    • [X] data type support multi database(index in sender)
    • [X] adjust short path generating algorithm
    • [X] Swagger for api management
    • [ ] custom short url
    • [ ] API rate
    • [ ] Admin account?
    • [ ] count each url parse time (high concurrent situation)
  • [ ] Frontend
    • [ ] qrcode support

Reference

Related Skills

View on GitHub
GitHub Stars23
CategoryDevelopment
Updated3mo ago
Forks14

Languages

Go

Security Score

92/100

Audited on Dec 4, 2025

No findings