All projects

TaskNova

Tell a Telegram bot what you need to do and when, and it works out the reminders for you.

Kind
Telegram bot
Year
2025
Built with
  • Python
  • Flask
  • APScheduler
  • SQLite
  • Telegram Bot API
  • Gemini 2.0 Flash
  • 1 more

The question

How much planning can a single chat message carry?

TaskNova takes the sentence you would say to a friend and turns it into a deadline and a set of well-timed nudges.

Why it exists

A task due tonight and one due next week need different reminders. TaskNova reads the message, works out the deadline and plans several reminders around it.

How it works

From a message to reminders

  1. 1

    Message

    You write what you need to do and when, in your own words.

  2. 2

    Plan

    Gemini returns a structured plan with the deadline, the urgency and the reminder times.

  3. 3

    Check

    Code validates the plan, drops past times and converts the clock to UTC.

  4. 4

    Schedule

    One job per reminder, saved to the database so they survive a restart.

  5. 5

    Reminder

    The bot messages you at each time.

Decisions

  • The model plans and the code decides

    Gemini only proposes a plan. Missing fields, past times and unreadable answers are handled by ordinary code, and a message the bot cannot understand gets a clear reply.

  • One timezone rule

    The user’s time is India Standard Time, the stored times and the scheduler run in UTC, and the conversion happens in one place.

  • Reminders survive a restart

    Pending reminders are saved in SQLite and reloaded at start-up, with past ones skipped.

Not built yet

  • A way to mark a task as done from the chat

Built with

Languages

  • Python

Frameworks and libraries

  • Flask
  • APScheduler

Data and storage

  • SQLite

AI and models

  • Gemini 2.0 Flash

Infrastructure and services

  • Render

Protocols and chains

  • Telegram Bot API