An ultra fast & flexible URL shortener using PostgreSQL database
First of all, thanks for using this Source Code, it was and is a ton of work to create and maintain it! That's why I'm asking everyone to donate a little bit of money (via Paypal through ko-fi) or if that's not possible, then join my Discord Server!
git clone https://github.com/vuthanhtrung2010/url-shortener
NOTE: You can do the exact same configuration inside of the .env.example
file, just make sure to rename it to .env
or use environment variables!
npm i
.env.example
to .env
and added environment variablesnpm run build
then run npm start
or npm start
or pm2 start npm --name URL-Shortener -- start
if you using a VPS to run the website as production mode. You can also run the website as developer mode by npm run dev
or pm2 start "npm run dev" --name URL-Shortener
. Might add npx
to the prefix of pm2
if you are not using the runtime version!/login
route and login to your Spotify Account!NOTE: You can do the exact same configuration inside of the .env.example
file, just make sure to rename it to .env
or use environment variables!
./.env
DATABASE_URL
get from your self hosted database. See full list of supported database by prisma ORM here.PASSWORD_HASH
your hased desired password for /dashboard
to create/update/delete URLs, do npm run hash
or pnpm hash
and type your password, fill in the variable to the variable named PASSWORD_HASH
in .env
file.PORT
is your port number the website listening to. Default listening port will be 3000.SENTRY_AUTH_TOKEN
(optional for who want to track errors/performance): Get it from Sentry Dashboard.SENTRY_DSN_ADDRESS
(optional for who want to track errors/performance): Get it from your Sentry project../src/config.tsx
name
fill your name. Make sure it is sort.profilePicture
the link to your profile picture, default profile picture is in ./public/assets/pfp.webp
. If you have different file name/extension after uploading, replace it.links
is all your links with the image, image located at ./public/assets/links
. Put your files there and replace the sub variable.baseURL
your base URL. Must be filled in to prevent error. You could use ShareX to shorten your URL too! Put it as your main route. Eg: https://links.devtrung.tech
, https://links.devtrung.tech/
NOT https://yourdomain.com/sth
.RequestURL
your real URL. Eg: https://links.devtrung.tech/api/create
.If you want to help improve the code, fix spelling or design Errors or if possible even code errors, you may create PULL REQUESTS. Please create pull request compare to beta branch, else you will get instant close! Please consider, that Vũ Thành Trung is the main Developer of this project!