Skip to main content

Python based URL shortening service

Project description

chr (coded under the name chru) is a Python based URL shortening service which uses Flask as a front end, and pysqlw as the SQL backend, to interface with sqlite3.

It can shrink billions of unique URLs with less than 6 characters, run in the background with no human interaction, and it can fly like a bird – or is that Super Man?

Features

  • Can shorten several billion (yes!) unique urls to a less than 6 character slug.

  • Verifies the shrunk URLs are legitimate, to stop abuse.

  • Uses reCAPTCHA to stop spammers from using the service for evil, not good.

  • Slugs are the base62 representation of their ID, so they’ll work in all browsers.

  • A live chr instance is located at chr.so.

Dependencies

To install all of these: pip -r requirements.txt install (if installing from source)

Notes

  • It’s highly recommended by the chr developers that if you’re putting this in a production environment (read: any computer with a public IP) that you look at the various Flask deployment options, such as putting it behind nginx, lighttpd, or something.

  • It’s also recommended that you get your server (nginx, lighttpd, or hell, even Apache) serve out the static folder, rather than letting Flask do it.

  • This will take a while to get fully featured, but we have a lot planned.

  • jqPlot comes bundled with chr, which is alright as it’s MIT licensed.

Running

Visit the docs page, and click Usage for information on how to run chr.

Author

Contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chr-2.1.1.tar.gz (86.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page