personal project – url shortener
To get back to ‘hardcode’ coding, I want to start a series of personal projects. The first in the series is an URL shortener.
The idea is to create a simple API service to generate and manage URL shortener keys. The goal of this API service is to:
- Generate a new key given an URL
- Retrieve the URL given the key
- Delete the key to URL mapping
- Update the URL for a given key.
These generic requirements are but standard requirements. It would be nice to have additional requirements, some functional and some not:
- (security requirement) Return the URL reputation score of the URL durin retrieval
- (analytics requirement) Capture the number of retrieval of a given key
- (security requirement) Authenticated API calls
- (security requirement) Ignore requests from potentially malicious IP (using SURBL, for example)
- (analytics requirement) Number of generate requests by unique callers for a given URL
I am hoping to get this up and running using a combination of AWS technologies (API Gateway, Lambda, …) and Python as the programming language. If everything works, I could provide a GoLang equivalent too! #FingersCrossed
I will continue to update this personal project requirement.