diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..4dcfd8e --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +APP_ID= +APP_HASH= +TG_PHONE=+15555555555 \ No newline at end of file diff --git a/README.md b/README.md index e69de29..98650f1 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,33 @@ +# Cyber Fenneko + +The next evolution in Telegram userbots. (jk, but it's pretty cool anyway) + +## What is this? + +This is a userbot that runs on Telegram's [MTProto API](https://core.telegram.org/mtproto). It's written in Python, and uses [Telethon](https://telethon.dev) as its main library. It's also modular, so you can add your own modules to it. + +## How do I use it? + +First, install dependencies. This can be done with [poetry](https://python-poetry.org/), or with pip. + +```bash +# With poetry +poetry install + +# With pip +pip install -r requirements.txt +``` + +Then, copy `.env.example` to `.env`, and fill in the values. You can get your API ID and API hash from [my.telegram.org](https://my.telegram.org). + +Finally, run the bot. + +```bash +# With poetry +poetry run fenneko + +# With python +python -m cyber_fenneko +``` + +More documentation to come... diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..f51c101 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,34 @@ +anyio==4.0.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f \ + --hash=sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a +certifi==2023.7.22 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082 \ + --hash=sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9 +h11==0.14.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d \ + --hash=sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761 +httpcore==0.18.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:13b5e5cd1dca1a6636a6aaea212b19f4f85cd88c366a2b82304181b769aab3c9 \ + --hash=sha256:adc5398ee0a476567bf87467063ee63584a8bce86078bf748e48754f60202ced +httpx==0.25.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:181ea7f8ba3a82578be86ef4171554dd45fec26a02556a744db029a0a27b7100 \ + --hash=sha256:47ecda285389cb32bb2691cc6e069e3ab0205956f681c5b2ad2325719751d875 +idna==3.4 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4 \ + --hash=sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2 +pyaes==1.6.1 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:02c1b1405c38d3c370b085fb952dd8bea3fadcee6411ad99f312cc129c536d8f +pyasn1==0.5.0 ; python_version >= "3.11" and python_version < "4" \ + --hash=sha256:87a2121042a1ac9358cabcaf1d07680ff97ee6404333bacca15f76aa8ad01a57 \ + --hash=sha256:97b7290ca68e62a832558ec3976f15cbf911bf5d7c7039d8b861c2a0ece69fde +python-dotenv==1.0.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:a8df96034aae6d2d50a4ebe8216326c61c3eb64836776504fcca410e5937a3ba \ + --hash=sha256:f5971a9226b701070a4bf2c38c89e5a3f0d64de8debda981d1db98583009122a +rsa==4.9 ; python_version >= "3.11" and python_version < "4" \ + --hash=sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7 \ + --hash=sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21 +sniffio==1.3.0 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101 \ + --hash=sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384 +telethon==1.30.3 ; python_version >= "3.11" and python_version < "4.0" \ + --hash=sha256:313e40fa06667b19ced13b379d9988167a8319bc0eb90bf39347cff46919a351