go-revise

go-revise is a Telegram bot designed to help you retain and reinforce information over time. Whether it's an article you’ve read about maps in Go, or any other topic, the bot ensures you don’t forget by prompting you to revisit the content at regular intervals.

MIT License

Stars
2

V

About The Project

A Telegram bot designed to help you retain and reinforce information over time. Whether it's an article or video, the bot will remind you to revise it at the right time.

Intervals

The bot uses the Spaced repetition technique to remind you to revise the information. The intervals are as follows:

Built With

Getting Started

Prerequisites

  • Go version 1.23.0

  • Taskfile 3

      go version
      task --version
    

Installation

  1. Clone the repo
    git clone https://github.com/ARUMANDESU/go-revise.git
    
  2. Change directory
    cd go-revise
    
  3. Write the environment variables in the .env file
    ENV=dev #local, test, dev, prod
    
    START_TIMEOUT=
    SHUTDOWN_TIMEOUT=
     # sqlite3 database file name, it will be created in cache directory
     # On linux in $HOME/.cache. On Darwin, in $HOME/Library/Caches. On Windows in %LocalAppData%
    DATABASE_URL= 
    TELEGRAM_TOKEN= #Get it from @BotFather
    
  4. Run the service
    task r
    

Testing

  1. Coverage
    task tc
    
  2. Unit tests
    task tu
    
  3. Integration tests
    task ti
    

Structure