Link-shortener-bot alternatives and similar software solutions
Based on the "URL Shorteners" category.
Alternatively, view Link-shortener-bot alternatives based on common mentions on social networks and blogs.
-
YOURLS
๐ The de facto standard self hosted URL shortener in PHP -
Polr
:aerial_tramway: A modern, powerful, and robust URL shortener -
Suri
Your own link shortener that's easily deployed as a static site (for free) -
devShort
A simple and privacy-friendly URL shortener for web developers, admins and all professionals. -
Lstu
Lightweight URL shortener. Read-only mirror of https://framagit.org/fiat-tux/hat-softwares/lstu -
url-shortener
Shitty url shortener, emoji powered. ๐โ๐ผ -
shorturl
Self hosted web app for shortening urls (URL shortener) -
liteshort
[MOVED] User-friendly, actually lightweight, and configurable URL shortener -
schort
schort is a tiny link shortener written in python3 and flask -
reduc.io
โฑ ๐ URL shortener service is written in Scala using Akka-Http and Redis โฐ -
Simple-URL-Shortener
url shortener written in php (with MySQL or SQLite) with history by users -
Purl
Purl (Petite URL) is an open source project with the goal of providing you with your own private URL shortener! -
Simply Shorten
A simple URL shortener that just shortens links. -
ReducePy
URL shortener service using Tornado and Redis runs on Docker and Kubernetes.
Access the most powerful time series database as a service
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Link-shortener-bot or a related project?
README
Link shortener front end
Host your own link shortener that works with a bot. Just send the link to a bot and it'll take care of the rest for you. Demo: @GiveMeShortLinkBot
This is the backend (nevermind the repo name) for the link shortener. You need a bot to add links to this link shortener. For source code of the bot see tommyku/link-shortener-bot
Getting Started
- Make sure you have Ruby 2.3.1+ installed and a Firebase database set up
- Run
bundle install
from project root folder - Set the environmental variables
FIREBASE_BASE_URI
andFIREBASE_SECRET_KEY
in your environment - To push some data into the Firebase database, use
bundle exec irb
:
irb> require 'firebase'
irb> firebase = Firebase::Client.new(ENV['FIREBASE_BASE_URI'], ENV['FIREBASE_SECRET_KEY'])
irb> firebase.push('appleorange', 'https://github.com/tommyku/link-shortener-front-end')
irb> response = firebase.get('appleorange')
irb> response.body
{'-somefirebasekey': 'https://github.com/tommyku/link-shortener-front-end'}
- To run the server locally, run
bundle exec ruby app.rb
and navigate to http://localhost:3000/appleorange, you should have been redirected to https://github.com/tommyku/link-shortener-front-end
Prerequisites
- Ruby 2.3.1+
- Set up Firebase database from the official site.
Installing
After cloning the repo, you should create two environmental variables FIREBASE_BASE_URI
and FIREBASE_SECRET_KEY
referring to your to the Firebase realtime database.
To run locally:
$ bundle install
$ bundle exec ruby app.rb
Deployment
Building Docker image
SSH into your production environment and build the image there:
$ docker build -t link-shortener-front-end .
Alternatively, you can build it locally and sftp
/scp
it onto the
production server:
(local)$ docker build -t link-shortener-front-end .
(local)$ docker save -o link-shortener-front-end link-shortener-front-end
(local)$ scp link-shortener-front-end [email protected]:~/link-shortener-front-end
(prod)$ docker load -i link-shortener-front-end
Run the image
From the project folder,
$ docker run -e FIREBASE_BASE_URI=FIREBASE_BASE_URI -e FIREBASE_SECRET_KEY=FIREBASE_SECRET_KEY -e PORT=3000 -p 3000:3000 link-shortener-front-end
Built With
- Sinatra - Web server
- oscardelben/firebase-ruby - ruby Firebase API wrapper
License
This project is an open-sourced software licensed under the MIT license.
*Note that all licence references and agreements mentioned in the Link-shortener-bot README section above
are relevant to that project's source code only.