Telegram bot for NSTU freshmen. The bot provides quick navigation through useful information, campus events, popular places, and simple surveys in Russian and English.
- RU/EN language switch
- Inline menu navigation
- Useful freshman information
- Campus event reminders
- Food and leisure survey
- Popular places based on survey answers
- Simple modular structure based on
aiogram 3
app/
handlers/ # Telegram message and callback handlers
services/ # Data/services layer
states/ # FSM states
utils/ # Keyboards and localization helpers
config.py # Environment configuration
main.py # Bot entry point
public/ # README images
.env.example # Example environment variables
requirements.txt # Python dependencies
Requires Python 3.10+.
git clone https://github.com/HontoUKI/Telegram_Bot.git
cd Telegram_Bot
python -m venv .venv.venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .envsource .venv/bin/activate
pip install -r requirements.txt
cp .env.example .envThen open .env and set your Telegram bot token:
BOT_TOKEN=your_real_token_herepython -m app.mainThe current survey storage in app/services/db.py is an in-memory fallback for local testing. Survey answers are lost after restart. For production usage, replace it with SQLite/PostgreSQL or another persistent storage.
Never commit .env or real bot tokens. Use .env.example only as a template.

