{"id":29434400,"url":"https://github.com/stanykey/telegram-explorer","last_synced_at":"2025-07-13T02:16:09.326Z","repository":{"id":156794247,"uuid":"627077139","full_name":"stanykey/telegram-explorer","owner":"stanykey","description":"educational project: obtain the history of Telegram chat for a certain period of time","archived":false,"fork":false,"pushed_at":"2024-12-31T13:56:39.000Z","size":152,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-31T14:39:19.850Z","etag":null,"topics":["asyncio","click","gui","pyrogram","python3","telegram-api","tkinter"],"latest_commit_sha":null,"homepage":"","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/stanykey.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,"publiccode":null,"codemeta":null}},"created_at":"2023-04-12T18:29:25.000Z","updated_at":"2024-12-31T13:56:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"b41243e9-1179-47d0-bd44-d4bc9d121591","html_url":"https://github.com/stanykey/telegram-explorer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/stanykey/telegram-explorer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanykey%2Ftelegram-explorer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanykey%2Ftelegram-explorer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanykey%2Ftelegram-explorer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanykey%2Ftelegram-explorer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stanykey","download_url":"https://codeload.github.com/stanykey/telegram-explorer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stanykey%2Ftelegram-explorer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265080256,"owners_count":23708121,"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":["asyncio","click","gui","pyrogram","python3","telegram-api","tkinter"],"created_at":"2025-07-13T02:16:08.894Z","updated_at":"2025-07-13T02:16:09.321Z","avatar_url":"https://github.com/stanykey.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Telegram Explorer\n\nThis is an educational project. It is based on my friend's nephew's lab task.\n\nThe current status can be described as `almost beta`:\n- the main window isn't resizable\n- no `save\\export` button (easy to add, but it's time to sleep :))\n- concurrent-related issues must be here due it was the experiment: UI + asyncio\n\nBut, the goals were passed, and it was fun: I remembered the time when I was a student and did programming in Borland C++ Builder\n\n\n## Task description\n- need to obtain the history of Telegram chat for a certain period\n- the preferred language is Python\n\n\n### My educational aims\n- [x] investigate how to work with [Telegram API](https://core.telegram.org/api)\n    - [x] look at popular Python packages for work with it\n- [x] implement cli-tool (POC) via the selected library\n- [x] implement the gui-application\n    - [x] learn how to build gui-apps with the [tkinter](https://docs.python.org/3/library/tkinter.html) library\n    - [x] adapt to be able to work with asyncio\n    - [x] enhance ui (need to try to prettify)\n        - [x] themes\n        - [x] show a progress bar on async operations\n        - [ ] make the main window resizable\n\n\n#### References\n- [pyrogram](https://docs.pyrogram.org): modern, elegant and asynchronous framework for Telegram API\n- [click](https://palletsprojects.com/p/click/): Python package for creating beautiful command line interfaces\n- [tkinter tutorial](https://www.pythonguis.com/tkinter-tutorial):  building simple GUI applications with Tk \u0026 Python\n- [tkinter grid detailed](https://www.pythontutorial.net/tkinter/tkinter-grid): introduction to the Tkinter grid geometry manager\n- [ttkwidgets's documentation](https://ttkwidgets.readthedocs.io/en/latest/index.html)\n- [yet one tkinter tutorial](https://effbot.org/tkinter-in-python-tkinter-tutorial)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstanykey%2Ftelegram-explorer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstanykey%2Ftelegram-explorer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstanykey%2Ftelegram-explorer/lists"}