CyberPravoBot
- 8 Devlogs
- 9 Total hours
An asynchronous Telegram bot created to detect phishing, social engineering, and suspicious URLs.
An asynchronous Telegram bot created to detect phishing, social engineering, and suspicious URLs.
Just updated the README once again and added a step-by-step production deployment guide. Also, the bot is now officially running 24/7 for everyone thanks to Nest! ❤
Today I’ve FINALLY completed my CI/CD auto-rebuild pipeline! Now, every single ‘git push’ to my public repositories triggers an instant automated update via a custom webhook system.
I really like visualizing my Linux directory structure as my own production-grade city, planning out neighborhoods and zones well in advance. As a result of this infrastructure layout, I now have 3 isolated Docker containers running flawlessly in my city:
Instead of using bloated, heavy out-of-the-box CI/CD platforms that would easily choke my tiny 2GB RAM Nest server, I deployed a minimal ‘almir/webhook’ image weighing only 19.2 MB. Because of this, my idle server consumes ~300 MB of RAM and takes up a mere ~1.4 GB of disk space :D
It was an unforgettable engineering experience building my own free analog of PaaS platforms like Amvera etc., completely from scratch.
Thank you Hack Club for Nest <3
Today, I decided to set up automatic redeployment for my bots on my favorite Linux-based Nest server , triggering on every git push to their public GitHub repositories <3
I lost a whole day trying to deploy my Telegram bot on Hack Club Nest. In the process, I found a ton of bugs, a broken OpenAI model from Groq 120B, and issues in my .env file (I literally had GROQ_AI_KEY instead of GROQ_API_KEY, lmao). But after a full day of fixes and guides, I finally managed to deploy my TG bot SIMULTANEOUSLY alongside the updated CyberShieldSlackBot (literally split VSCode terminal on photo) :D
Final touches, sections, etc.
Egjoy huge minimap of main file in VSCode:)
Wrote the readme myself while doing the Personal Site mission
Documentation was updated before Shipping my project!
Today I focused on backend optimization and infrastructure stability for CyberShield.
First, I fixed a performance bottleneck in the network layer. Instead of opening a new HTTP session for every single VirusTotal API call, the bot now initializes one global aiohttp.ClientSession at startup that manages connections inside the core event loop.
Second, I tackled container environment persistence. To stop the active AI model from resetting on server restarts, I designed and integrated a universal Key-Value system_settings database table. Now, admin configurations survive crashes and host redeployments.
Finally, polished the codebase with proper asynchronous documentation and strict error handling!