Share your repls and programming experiences

← Back to all posts
SJURL - Collecting Data While Shortening URLs Has Never Been Easier
CoolCoderSJ (691)

Whoa there! That URL is too long mate, your friend cant copy-paste the link, nor can they click on it, and their hand is going to start hurting by the time they type out that gigantic URL! But what IF there was an easy way, a quick way to shorten URLs without having to deal with Bitly? Sure, Bitly's great, but what if you need something more? Can there actually be software with more features than Bitly? Whoa, stop right there, if you asked yourself that question, shame on you, of course, there can be such software.

A while back, I shared SJURL, but its gone through a complete redo!

With more features than Bitly, SJURL has everything you need. Day-to-day work, and enormously detailed tracking. But is such spoken-of software actually free? Of course, it is!

Pricing and Ads

Free, None.


Detailed Analytics

SJURL collects total clicks, clicks per Operating System, per browser, time clicked, and the user agent collected.

Safebrowing by Google

Powered by the SafeBrowsing API by Google, SJURL warns you when visiting malicious links.


SJURL has a helpful bookmarklet to help you shorten URLs in under 5 seconds. That's called true speed.

Web Parameter Passing

Any URL parameter such as /login, or ?id=aaaaa can be passed through the shortened URL too!

Custom Backend

With SJURL, you can enter a custom backend, or have it generate one. If its out of ideas, it will automatically increas the backend length.

Name your Links

Name each link so you know exactly what its for.

Search URLs

We've all been there, there are so many URLs that you don't know where to look. Instead of doing messy keyboard shortcuts, you can search for URLs and SJURL will filter your links as you type.

QR Codes

Sometimes, you just gotta show it to them. For free, SJURL auto generates QR Codes for your links.

Discord Webhooks

Send a message automatically to Discord whenever your link is clicked so you know when your colleague has clicked that super important link.

Edit Links

But wait! You entered the wrong URL! No need to worry, SJURL will let you edit your links!

Delete Links

Have a link that you know is never going to be used again? Delete it!


To see a pretty overview of your clicks, SJURL auto generates a graph for your clicks over time.

Sneak Peeks

Wanna see where a link takes you? Add a + at the end of a shortened link to see shortened link metadata.

What's New?

  • A complete CSS redo making the whole site more enjoyable and welcoming.

  • Graphs use Google Charts to display prettier graphs

  • Speed Optimization

    • The speed has been heavily worked on. Link unoshrtening is 15x faster, bringing the speed down to 200 ms.
  • The Bookmarklet has been released.

  • General Improvements

ruiwenge2 (1211)

whoa the css is amazing! wayyyyy better than me

MarcusWeinberger (798)

This is what all URL shorteners should aspire to be. The functionality is incredible and the design is beautiful!

zplusfour (914)

that's very cool!
and i want to learn how to use easypydb pls

codingjlu (484)

I will admit that this CSS is one that I approve.

AchalJhawar (3)

amazing snow looks pretty cool

PikachuB2005 (12)

Because using is too difficult. =/

PikachuB2005 (12)

nvm this has a great UI =0

WilliamLindenbe (20)


apexcharts:14 Uncaught (in promise) TypeError: Cannot read property 'parentNode' of undefined
    at apexcharts:14
    at new Promise (<anonymous>)
    at t.value (apexcharts:14)
    at new.js:249
apexcharts:14 Uncaught (in promise) TypeError: Cannot read property 'parentNode' of undefined
    at apexcharts:14
    at new Promise (<anonymous>)
    at t.value (apexcharts:14)
    at new.js:250
apexcharts:14 Uncaught (in promise) Error: Element not found
    at apexcharts:14
    at new Promise (<anonymous>)
    at t.value (apexcharts:14)
    at new.js:344
Glitterpoop (15)

i approve of this you may have my upvote

notTussiez (5)

This is incredible!

AyushGudipati (11)

@notTussiez Not tussiez? IK tussiez but not u.

notTussiez (5)

@AyushGudipati I'm most definitely not tussiez.

Presser (0)

wow the home page is a html template


bro, i just checked sessions, and saw like 200 files inside

CoolCoderSJ (691)

@DEANKASOZI the sessions folder is a folder of double encrypted sessioon keys for anyone who logs into sjurl lol

CodingEssence (136)

Nice! It's cool how you can do so much with just python! and is easypydb a database?

CoolCoderSJ (691)

@CodingEssence yep! easypydb is a simple key value database.
Though ive seen many people note that i used easypydb, I just want to point out that easypydb is only for APIs and Auth keys, the main site is built completely on Replit DB, another key value database.

CodingEssence (136)

@CoolCoderSJ yeah I saw, but when i do

import easypydb
# Or
from easypydb import DB

It tells me this

Traceback (most recent call last):
  File "", line 1, in <module>
    from easypydb import DB
ModuleNotFoundError: No module named 'easypydb'
CodingEssence (136)

@CoolCoderSJ And btw, you have a spelling error:

You wrote The speed has been heavily worked on. Linkunoshrteningis 15x faster

it should be unshortening

DSAEvan (27)

The website you made is searchable! How did you do that?

DSAEvan (27)

@CoolCoderSJ How do you have your own domain name tho?

DSAEvan (27)

@CoolCoderSJ also which one domain or prefix?

DSAEvan (27)

@CoolCoderSJ how long does it take to verfy and rename your reply?



RahulChoubey1 (186)

Your pfp has an h


DerrickLukimin (3)

Looks amazing!
One point though, when you are brought to the "link successfully shortened" page, the "Add Link" button in the sidebar has a small letter "a".

QuantumCodes (26)

THE DESIGN!!! :O amazing! -- i named this Totally Not Replit. Tomorrow i will see how many clicked this :P

QuantumCodes (26)

@QuantumCodes how long does it take to update the page to show analytics? Still shows no links has been shortened

CoolCoderSJ (691)

@QuantumCodes analytics and stuff are instant, but you need to reload the page

QuantumCodes (26)

Not there.. link is clickable tho... is it cuz im on tab? @CoolCoderSJ

CoolCoderSJ (691)

@QuantumCodes ? If you go to the home page and click on your link, you should see analytics.

QuantumCodes (26)

@CoolCoderSJ in homepage it says; what bout add a link or two

CoolCoderSJ (691)

@Kingq23 wdym? i dont see any errors, only a GET for /signup

CodingBlizzard (8)


QuickV (131)

I read "edit links", and I knew this was going to be better than Bitly.

RahulChoubey1 (186)

allow users to sign up with google, github, etc.

CoolCoderSJ (691)

@RahulChoubey1 thats a great idea for the next version!

CyberHacker101 (136)

lol ur web has been blocked by ma school @CoolCoderSJ

CoolCoderSJ (691)

@CyberHacker101 lol unfortunately many schools are blocking it for either
reason 1) Uses 3xx redirect, which may be considered dangerous
reason 2) Teachers/administrators cannot see where links lead them

CyberHacker101 (136)

it mostly reason 2

we students always rickroll all teachers we meet xD

actually, any web that ends with ".tk" or ".io" has been blocked @CoolCoderSJ

TheMaster7661 (34)

Wow, great site! I had thought that Python was mainly used for text-adventure games, crappy text-based games, or snake. I never thought you could create a website with it, then again, I don't really know much about Python. My questions; could this have been done in HTML/JS/CSS? I'm trying to find people that wanna help me create an RPG game. Would you be interested? If not, do you know anyone who might be interested?

RahulChoubey1 (186)

@NoahJospeh you can't with vanilla HTML; servers are required for login. However, you can use Node.js instead of Python.

CoolCoderSJ (691)

@NoahJospeh Thanks!
Python can be used for many things, web apps, cli apps, etc. !
This could not have been done solely in HTML/JS/CSS, as it uses a backend server. HTML/JS cannot have variable paths, so they can't be used for a URL shortener.
I would be interested for your RPG game :D, but unfortunately i am already quite busy with work stacking up D:
I would love to see it when its complete though!

TheMaster7661 (34)

@CoolCoderSJ Thanks, please pass the word on about the game I'm trying to create, and what coding language do you think would be best to use for an rpg game that has music, sound effects, sprite images, and many things you'd find in an rpg game like that.

RahulChoubey1 (186)

@NoahJospeh a Python/Node web server with HTML canvases on the frontend.

TheMaster7661 (34)

@RahulChoubey1 Do you think I could combine different coding languages like this for a game, to be able to save a person's data in the game?

RahulChoubey1 (186)

@NoahJospeh In what sense? JS has databases too, and what about repl db?

TheMaster7661 (34)

@RahulChoubey1 I was wanting to try and create a way for someone to save their game data, but it won't get lost when they clear their cookies and other browsing data. The only way to clear game data would be to start a new game.

RahulChoubey1 (186)

@NoahJospeh then use Repl DB with the server backend.

RahulChoubey1 (186)

then send the important data(like username, etc.) when rendering the template. That way, you can still use the username in scripts(I can help if you want)

TheMaster7661 (34)

@RahulChoubey1 Ok, I haven't actually started coding the game, as I am looking for skilled people who wanna help me code the game, but I was just wondering, because people might not like it if they decide to help me code my game, and I can't do my part in helping them. Now that I know this, I can tell other people if and when they decide to help me code my game, which makes thing much easier for us all.

RahulChoubey1 (186)

@NoahJospeh Alright. I actually want to join. (Don't send the link, invite directly.)

TheMaster7661 (34)

@RahulChoubey1 Ok, I will invite you, but the repl where I have uploaded some files is in Python. We don't have to use Python. I just thought I could try and let people view all the files easier.

fuzzyastrocat (1867)

Whoa there mate! This exact same intro made this seem almost like a repost mate, your friend might just breeze by the post, nor will they realize all the cool stuff you added, and their hand is going to start hurting okay dangit I can't figure out a way to work that one into it

Joking aside nice job! The CSS is smooth.

CoolCoderSJ (691)


and their hand is going to start hurting since they would be forced to click the back button D:

haha thanks!

Cooli (21)

Please give credit to the person you have gotten the homepage template from:

CosmicBear (56)

WoW the CSS has completely changed!