Skip to content

SimulatorML/MyDigest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyDigest

A news aggregator bot that provides users with personalized, concise daily digests from selected Telegram channels. The service focuses on delivering relevant news content through advanced recommendation systems, offering a minimalistic and ad-free user experience with the option to navigate to the original source.

Features

  • 📰 Aggregate news from multiple Telegram channels
  • 🛠️ Create and manage custom digests.
  • 📬 Schedule digests to be sent at specific times.
  • 🔎 Search news by keywords or categories.
  • 📊 Store and analyze user preferences for personalized recommendations.

Get started

  1. Clone the Repository:

    git clone https://github.com/SimulatorML/MyDigest
    cd MyDigest
  2. Setup with Makefile (recommended):

    make setup
    source mydigest/bin/activate # On Windows use: mydigest\Scripts\activate
    make run
  3. Or manual setup with venv:

    python -m venv venv
    source venv/bin/activate  # On Windows use: venv\Scripts\activate
    pip install -r requirements.txt
    python -m src.bot

Development

Adding a New Feature

  1. Create a new branch:
    git checkout -b username/feature-name
  2. Implement your changes in the appropriate module.
  3. Puch to origin
    git push origin username/feature-name
  4. Submit a merge request for review.

Docker run

  1. Create an .env file with environment variables in the root of the repository using the .env.sample template.
  2. Create a dev_scripts/docker_build.sh file using the dev_scripts/sample.docker_build.sh template.
  3. Create a dev_scripts/docker_run.sh file using the dev_scripts/sample.docker_run.sh template.
  1. Run the build command
    sh ./dev_scripts/docker_build.sh
  2. Run the docker launch command
    sh ./dev_scripts/docker_run.sh
  3. Use the deployed Bot

Project structure

  1. data - данные для работы с ботом
  2. dev_scripts - скрипты для локальной cборки и запуска сервиса в докер контейнере
  3. notebooks - jupyter notebooks для экспериментов/тестов/примеров
  4. src - код проекта
  5. test - тесты

Project media files

Google drive: https://drive.google.com/drive/folders/1c7mW2ya2pvmrnQ8miRANl7E_TuIiYxuP?usp=share_link

The main tools used in the project

Python Aiogram Pylint

MistralAI Supabase

Pandas

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5