TaskNova is a Telegram bot that goes beyond simple reminders — it's your personal productivity agent powered by Google Gemini. It doesn't just set a timer. It thinks. It plans. It adapts.
Chat with TaskNova on Telegram:
"Remind me to complete my lab report before 8 PM tonight"
...and TaskNova will:
- Figure out what you need to do
- When you need to do it
- And intelligently schedule multiple reminders so you don't slack off or forget.
- Parses natural language using Gemini 2.0 Flash
- Extracts task, deadline, and plans smart reminders
- Schedules and sends reminders through Telegram Bot
- Sends multiple nudges depending on task urgency (short/long deadlines)
- Handles vague times like "in 10 minutes" or "tomorrow evening"
- Super simple chat interface — no apps, no clutter, just Telegram
- Python + Flask
- APScheduler for job scheduling
- Telegram Bot API
- Google Gemini Pro API (via Google AI Studio)
- Hosted on Render
git clone https://github.com/varunaditya27/tasknova.git
cd tasknovapip install -r requirements.txtCreate a .env file:
BOT_TOKEN=your_telegram_bot_token
GEMINI_API_KEY=your_gemini_api_keypython app.pyYour Flask server will run at http://localhost:5000 and listen for Telegram webhook events.
- Push this repo to GitHub
- Create a Web Service on Render
- Connect your GitHub repo
- Set build/start commands:
- Build Command:
pip install -r requirements.txt - Start Command:
python app.py
- Build Command:
- Add environment variables (
BOT_TOKEN,GEMINI_API_KEY) in Render's dashboard - Set your Telegram webhook using:
curl -X POST https://api.telegram.org/bot<YOUR_BOT_TOKEN>/setWebhook \
-d url=https://your-render-url.onrender.com/webhooktasknova/
├── app.py # Flask app (Telegram webhook handler)
├── gemini_utils.py # Handles Gemini API requests & smart planning
├── requirements.txt # Python dependencies
├── render.yaml # Optional: Render deployment config
└── .env # Secrets (never commit this!)
You (on Telegram): "Remind me to revise DBMS unit 2 by 10 PM today"
Gemini thinks, calculates: "This is urgent. Let's send 3 reminders: 30 min before, 10 min before, and at the deadline."
Bot:
✅ Task scheduled: Revise DBMS unit 2
🕒 Reminders will be sent at:
- 9:30 PM
- 9:50 PM
- 10:00 PM
You: "Set a reminder to water plants in 10 minutes"
Bot: "✅ Got it! Smart reminder set."
Crafted with caffeine, memes, and Gemini by Varun
MIT — Use it, fork it, modify it, build something cooler with it. Just give credit where it's due. 😎