A minimal URL shortner app with user management made with using Django(backend) and React(Frontend) and hosted on Heroku(at the time of writing).
Front end repo = https://github.com/kakdeykaushik/kinara-frontend
BASE URL = https://kinara-backend.herokuapp.com/
- username[varchar] - (mandatory field, Unique) users username.
- password[varchar] - (mandatory field) users password.
- short_url[varchar] - (mandatory field) short url.
- original_url[varchar] - (mandatory field) original target url.
- is_active[bool] - status of short_url if it is accessible or not (default = True).
- clicks[int] - number of times url has been accessed (default = 0).
- owner[ForeignKey] - (FK pointing to User model)Owner/creator of the short Url.
- User can enter username and password to create an account(if already not created with given username). It returns a token for Authentication.
- User can enter username and password to login. It returns a token for Authentication.
- User can create short url for his/her target url.
- Authentication required.
- User can view details of short url like number of times clicked and is active or not.
- Only owner of short url can view these details.
- Authentication required.
- User can delete the short url.
- Only owner of short url can perform this action.
- Authentication required.
- User can disable the short url.
- Enabled by default.
- Only owner of short url can perform this action.
- Authentication required.
- User can enable the short url.
- Only owner of short url can perform this action.
- Authentication required.
- Anyone with the short url can access this.
Code coverage = 85%