{"id":32396215,"url":"https://github.com/alirn76/shortener","last_synced_at":"2025-10-25T06:59:17.114Z","repository":{"id":112685603,"uuid":"575486137","full_name":"AliRn76/shortener","owner":"AliRn76","description":"URL Shortener ","archived":false,"fork":false,"pushed_at":"2025-02-07T15:37:22.000Z","size":135,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-07T16:31:53.075Z","etag":null,"topics":["django","docker-image","python","url-shortener"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/alirn76/url-shortener","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AliRn76.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-07T16:09:49.000Z","updated_at":"2025-02-07T15:37:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"3c33f68a-b986-4fcc-8e07-e83d82e6ae4d","html_url":"https://github.com/AliRn76/shortener","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AliRn76/shortener","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliRn76%2Fshortener","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliRn76%2Fshortener/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliRn76%2Fshortener/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliRn76%2Fshortener/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AliRn76","download_url":"https://codeload.github.com/AliRn76/shortener/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliRn76%2Fshortener/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280917365,"owners_count":26413206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","docker-image","python","url-shortener"],"created_at":"2025-10-25T06:58:52.434Z","updated_at":"2025-10-25T06:59:17.109Z","avatar_url":"https://github.com/AliRn76.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# What is URL Shortener?\n\nURL shortening is a technique on the World Wide Web in which a Uniform Resource Locator may be made substantially shorter and still direct to the required page. \nThis is achieved by using a redirect which links to the web page that has a long URL.\n\n\n# How to use this image\n\n## Simple usage:\n\n`docker run --name shortener -d alirn76/url-shortener:latest`\n\n## Options:\n\n### Publish: \nThe instance starts at **port 8000**, so you can publish it in any port you want.\n\n### WORKER:\n **Default** is `2`\n\nThe instance starts with how many workers?\n\n### BASE\\_URL:\n\n**Default** is [_http://127.0.0.1:8000_](http://127.0.0.1:8000)\n\n**Usage:**\n-   1. Show the _Shortened URL_ for copy \n-   2. Check the _Original URL_ if `PRIVATE` is `true`\n\n\n### PRIVATE:\n\n**Default** is `false`\n\nCheck the `BASE_URL` in _Original URL_\n\u003e _It won't work correctly if `BASE_URL` is ip_ \n\n**example**:\n\n`BASE_URL` = https://alirn.ir\n\n- `Original URL` = https://google.com/something/  --\u003e `Not Valid`\n- `Original URL` = https://alirn.ir/something --\u003e `OK`\n- `Original URL` = http://alirn.ir/something --\u003e `OK`\n- `Original URL` = https://api.alirn.ir/something --\u003e `OK`\n- `Original URL` = https://alirn.ir.google.com/ --\u003e `Not Valid`\n    \n\n### TITLE:\n\n**Default** is `\"URL Shortener\"`\n\nUsed to show the **Title** of page _(you can put your website name in it)_\n\n### DESCRIPTION:\n\n**Default** is `\"Create Short \u0026 Memorable URL In a Seconds.\"`\n\n\n## Full-featured usage:\n\n`docker run --name shortener --restart always -p 80:8000 -e WORKER=1 -e BASE_URL=https://example.com -e PRIVATE=true -e TITLE=\"URL Shortener\" -e DESCRIPTION=\"Create Your Short URL Here\" -d alirn76/url-shortener:latest`\n\n\n## Persistent Storage:\n\u003e **Known Issue:** You'll get 5xx error if you don't create a docker volume.\n-   1.  Create docker volume → `docker volume create shortener-volume`\n-   2. Add volume to you run command → `--volume shortener-volume:/shortener/database`\n\n\n## Demo:\n![demo](sample.png)\n\n\u003e ### Docker Image → [https://hub.docker.com/r/alirn76/url-shortener](https://hub.docker.com/r/alirn76/url-shortener)\n\n\u003e #### Thanks to [MohammadReza Shahbazi](https://www.linkedin.com/in/mohammadrezashahbazi/) for Frontend","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falirn76%2Fshortener","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falirn76%2Fshortener","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falirn76%2Fshortener/lists"}