Full stack URL shortner
Takes long URLs and shortens them
Demonstration available at: cubel.ink
Project Aims:
- Python3 web app with reactive CSS/HTML
- Minimal runtime container
- URL reputation checking, QR code generation & statistics page
- Image and files have comprehensive security scanning
Features
What Cube Link has so far:
Statistics page showing clicks and last visit by time
Sanitisation of input from user for both URLs and extensions on requests
Encrypts data with extension & random salt, indexes with hashsums
Checks on user shared URLs, to ensure they begin with HTTPS
Allows users to create custom URL extensions
Rejects known spam domains via bad domain lists
Generates QR codes for users to download and share
Shows statistics about links on dedicated stats page
Uses scratch container image for runtime security
A frontend with reactive CSS & HTML
400 and 500 HTTP error handling with pages
Distrubtes static content via a CDN
Captcha on link submission page
...with more features in development:
Have a look at the enhancements on GitHub and upvote what you like the sound of.
Create a feature request yourself on the issues page if you have a good idea.
CI/CD
Using security in the pipeline:
This project uses GitHub actions for code and docker image security scanning
This is done alongside deployment, patching & linting tools for high quality code
Findings are shown in PR comments or documented on the repository security page
Fixable vulnerabilities are surfaced first through configurations in the actions pipelines