s provides an easy way to set up a self-hosted link shortener on your server.
s uses a JavaScript Restify server for the back-end. The front-end is built with VueJS, and uses Vuetify for the UI.
s requires NodeJS to be installed. Version 8+ is recommended.
- Install the dependencies by running
yarn
ornpm i --production
- Copy
config/config.ex.js
toconfig/config.js
and edit the config to your needs - Run s with
yarn run
ornode ./server.js
orpm2 ./pm2.json
Support for multiple databases
- MongoDB
- PostgreSQL
API Server
-
Restify server
- Visit link
- Shorten url
- Delete link
- Create account
- Authenticate
- Change password
- Get links for user
- Ratelimit
- Custom ratelimiter that isn't garbage
-
Express re-write
- Link routes
- Authentication routes
- Authentication handler
- Rate-limiting with per-route options
- Optional static file serving
-
Short id generator
Website
- Main functions
- Shorten link
- URL Validation
- View links
- Delete links
- Shorten link
- Accounts
- Create
- Log in
- Change password
- Error/failure display
Link analytics
- Link visited
- Created at