Screws is an open source URL shortening service centered around link clickers instead of the link creators. Most URL shortening services exist for their detailed analytics. This is great for marketing teams, but not for the users who click on the links. They also redirect you without giving you a chance to see what the final URL is. If you don't know where a URL leads, how can you know it's safe?
Screws does things a bit differently. Rather than immediately getting redirected when you click on a shortened link, you are instead shown a confirmation page with details about the full URL. On that page you get to see the exact same details everyone gets to see, no special treatment for link creators. Instead of seeing things like page referrer, devices, browsers, systems, and geo location of people who click on the links, you only get basic information about the full URL.
What information does Screws collect?
None! Well, almost. Screws never keeps track of anything that can be linked back to you in any way. Below is a full list of the information that gets saved in the database for each URL created. No personal information is ever saved.
Website administrators have the ability to see entire URL objects saved in the database except the password field, which is replaced with a simple yes or no value to show whether or not the URL is password protected. This allows for basic moderation like removing blatantly malicious URLs. By using this webiste you agree to let Screws staff view and remove any URL for any reason, without notice.
- CodeThe shortened URL code
- Long URLThe full URL to redirect to
- Is Random CodeWhether the code was randomly generated
- Creation DateWhen the short URL was created
- Expiration DateWhen the link will expire (optional)
- PasswordHashed password for limiting access (optional)
- Preview DataOpen Graph data including title, description, and image (if available)
The full source code for this website is available on GitHub. This allows you to look over the code as well as host your own version of Screws. The README file has detailed instructions on how to set up the project to run on your own machine or a server. Feel free to star, fork, or make a pull request to the repository, it would all be greatly appreciated!