{"id":13461871,"url":"https://github.com/MasterGroosha/telegram-xkcd-password-generator","last_synced_at":"2025-03-24T23:31:59.293Z","repository":{"id":54440439,"uuid":"63470855","full_name":"MasterGroosha/telegram-xkcd-password-generator","owner":"MasterGroosha","description":"Readable Passwords Generator For Telegram (Bot API)","archived":false,"fork":false,"pushed_at":"2023-04-17T09:38:18.000Z","size":536,"stargazers_count":42,"open_issues_count":1,"forks_count":17,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-29T10:03:07.935Z","etag":null,"topics":["password-generator","telegram","telegram-bot","xkcd"],"latest_commit_sha":null,"homepage":null,"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/MasterGroosha.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2016-07-16T07:18:43.000Z","updated_at":"2024-09-22T02:36:43.000Z","dependencies_parsed_at":"2024-02-17T10:44:52.585Z","dependency_job_id":null,"html_url":"https://github.com/MasterGroosha/telegram-xkcd-password-generator","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MasterGroosha%2Ftelegram-xkcd-password-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MasterGroosha%2Ftelegram-xkcd-password-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MasterGroosha%2Ftelegram-xkcd-password-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MasterGroosha%2Ftelegram-xkcd-password-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MasterGroosha","download_url":"https://codeload.github.com/MasterGroosha/telegram-xkcd-password-generator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245372193,"owners_count":20604487,"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":["password-generator","telegram","telegram-bot","xkcd"],"created_at":"2024-07-31T12:00:25.844Z","updated_at":"2025-03-24T23:31:58.993Z","avatar_url":"https://github.com/MasterGroosha.png","language":"Python","funding_links":[],"categories":["Examples","Bots"],"sub_categories":["Python"],"readme":"# \u003cp align=\"center\"\u003e  Readable Passwords Generator for Telegram #\n\nThis bot allows you to generate readable passwords directly from Telegram without necessity to open external utilities such as KeePass. An inspiration for this bot came from famous [XKCD 936](http://xkcd.com/936/) strip.  \nTry it now: https://t.me/passgenbot\n\n### Features \n* Presets of different complexity;\n* Ability to generate customized password;  \n* Inline mode with colored complexity;  \n* No personal data is collected!  \n* Basic multilanguage support (En+Ru), depending on `language_code` from Bot API;  \n* [Docker support](#docker)\n\n### Requirements\n* Python 3.7+  \n* [aiogram](https://github.com/aiogram/aiogram) – Telegram Bot API framework;  \n* [Redis](https://redis.io) as backend for aiogram's finite state machine (FSM);  \n* [XKCD-password-generator](https://github.com/redacted/XKCD-password-generator) – It goes without saying :)\n\nYou can install all these requirements with `pip install -r requirements.txt` command. Redis must be done separately \n(or will be automatically pulled if using [Docker](#docker) method below)\n\n### Presets\n ![Presets](img/readme_presets.png)\n\n* `/generate_weak` – 2 words, no digits or separators between words\n* `/generate_normal` – 3 words, random UPPERCASE, separated by numbers\n* `/generate_strong` – 4 words, random UPPERCASE, separated by numbers or special characters\n\n### Customized Passwords\n\n![Customized Passwords](img/readme_settings.png)  \n\nWith `/settings` command you can customize generated passwords. Currently supported settings are number of words (2 to 8), \nprefixes and suffices in the beginning and in the end of password and separators between words in password. \nThen just use `/generate` command to create password based on your settings.\n\n### Inline mode\n\n![Inline mode](img/readme_inline.png)\n\nYou can also use this bot in inline mode. An indicator on the left shows rough password complexity (green is good, red is not).\n\n### Docker\n\nThis bot supports deployment via docker-compose. First create a directory structure for your bot, e.g.:  \n```bash\nmkdir -p /opt/passgenbot/{bot-config,redis-config,redis-data}\ntouch /opt/passgenbot/bot-config/config.ini\n```\n\n`bot-config` directory contains `config.ini` file.  \n`redis-config` directory contains custom config file for Redis. If you don't place anything here, the following config \nwill be used:  \n```\nport 6379\nsave 600 1\ndbfilename redis_dump.rdb\n```\n`redis-data` directory contains your database file. You can place your own one if migrating from other bot's instance. \nDon't forget to update `redis.conf` file if you rename or move your database file. \n\n\nUse [config.example.ini](https://github.com/MasterGroosha/telegram-xkcd-password-generator/blob/master/config/config.example.ini) as an example \nfor your own configuration file, then place [docker-compose.yml](https://github.com/MasterGroosha/telegram-xkcd-password-generator/blob/master/docker-compose.yml) file \nnext to other created directories and start your bot using `docker-compose up -d` command. Check logs using `docker-compose logs`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMasterGroosha%2Ftelegram-xkcd-password-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMasterGroosha%2Ftelegram-xkcd-password-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMasterGroosha%2Ftelegram-xkcd-password-generator/lists"}