{"id":22959715,"url":"https://github.com/antynk/url-shortener","last_synced_at":"2026-04-30T10:35:34.193Z","repository":{"id":269303928,"uuid":"695795404","full_name":"AntynK/url-shortener","owner":"AntynK","description":"This website is designed for creating short URLs.","archived":false,"fork":false,"pushed_at":"2025-02-04T18:54:38.000Z","size":30,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-04T19:40:37.495Z","etag":null,"topics":["bcrypt","flask","python","python3","sqlite3","ukrainian","ukrainian-language"],"latest_commit_sha":null,"homepage":"https://urlshortenertest.pythonanywhere.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AntynK.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":"2023-09-24T08:49:13.000Z","updated_at":"2025-02-04T18:54:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"f533a4a5-33b5-4442-9f09-0c226e225c1e","html_url":"https://github.com/AntynK/url-shortener","commit_stats":null,"previous_names":["antynk/url-shortener"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntynK%2Furl-shortener","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntynK%2Furl-shortener/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntynK%2Furl-shortener/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntynK%2Furl-shortener/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AntynK","download_url":"https://codeload.github.com/AntynK/url-shortener/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246743246,"owners_count":20826496,"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","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":["bcrypt","flask","python","python3","sqlite3","ukrainian","ukrainian-language"],"created_at":"2024-12-14T18:28:07.770Z","updated_at":"2026-04-30T10:35:34.166Z","avatar_url":"https://github.com/AntynK.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# URL Shortener\n\u003e [!NOTE]\n\u003e Цей документ має переклад [українською](README_UA.md).\n\nThis website is designed for creating short URLs.\n\n\n## Localization\nThe website supports two languages: English and Ukrainian. [Flask-Babel](https://pypi.org/project/flask-babel/) is used for localization.\n\n\u003e [!NOTE]\n\u003e The website selects the language based on your browser's selected language.\n\n## Features\n### Adding and editing short URLs\nThe website allows users to create and edit short URLs. You can edit the destination (or \"long\") URL of a short URL on the page **127.0.0.1:5000/\u003cshort_url\u003e/modify**, but only if a password was provided during the creation process.\n\n\u003e [!NOTE]\n\u003e If 'long' URL does not include `http://` or `https://`, `https://` will be added automatically.\n\n\u003e [!IMPORTANT]\n\u003e Password must be strong.\n\n### Change password\nIn the **127.0.0.1:5000/\u003cshort_url\u003e/modify** page you can not only edit the short URL but also change  password.\n\n\u003e [!IMPORTANT]\n\u003e Password must be strong.\n\n### Viewing information\nBy visiting the **127.0.0.1:5000/\u003cshort_url\u003e/info** page you can view details such as when the short URL was created and where it redirects.\n\n\n## Installing dependencies\nThe website uses [Flask](https://pypi.org/project/Flask/), [Flask-Babel](https://pypi.org/project/flask-babel/) and [bcrypt](https://pypi.org/project/bcrypt/).\n\n\u003e [!IMPORTANT]\n\u003e [Python 3.9](https://www.python.org/) or later must be installed.\n\nDependencies can be installed with the following command:\n#### Windows\n```\npip install -r requirements.txt\n```\n\n#### macOS та Linux\n```\npip3 install -r requirements.txt\n```\n\n\n## Running\n\nUse following command\n#### Windows\n```\npython app.py\n```\n\n#### macOS та Linux\n```\npython3 app.py\n```\n\nThis will host web server at the IP address **127.0.0.1** and port **5000**. Address and port can be changed in[config.py](./config.py) file.\n\n## Security\nPassword are [hashed](https://en.wikipedia.org/wiki/Cryptographic_hash_function), so they cannot be reverted to original state.\n\nModule [bcrypt](https://pypi.org/project/bcrypt/) is used for hashing.\n\n\u003e [!IMPORTANT]\n\u003e Always use strong passwords. Hashing cannot protect against weak passwords.\n\n\u003e [!IMPORTANT]\n\u003e Short url is randomly generated.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantynk%2Furl-shortener","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantynk%2Furl-shortener","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantynk%2Furl-shortener/lists"}