Skip to the content.

TASE (Telegram Audio Search Engine)


A lightning fast audio full-text search engine on top of Telegram

It allows users to quickly and easily find information that is of genuine interest or value, without the need to wade through numerous irrelevant channels. It provides users with search results that lead to relevant information on high-quality audio files.


Contents


What makes TASE special?

TASE is a growing open source full-text audio search engine platform that serves high-volume requests from users. Based on Python and Telegram, the latest major update introduces many new features among which a highly abstracted and modular design pattern powered by Elasticsearch and ArangoDB with support for parallel clusters on different servers located in different parts of the world.

TASE at a glance

  1. Advanced full-text search engine for audio files
  2. Extremely fast audio file indexer (benchmark: minimum 4 million songs per day per client)
  3. Support for multiple parallel clients as indexer
  4. Support for distributed parallel clusters on multiple servers (searching and indexing) (all audio files, graph and document models)
  5. Graph of users and items
  6. Dynamic URLs
  7. Asynchronous
  8. Reach admin tools
  9. Multilingual
  10. Audio file caching
  11. Easy configuration and customization
  12. Friendly look and feel

TASE is free and always will be. Help us out… If you love free stuff and great software, give us a star! :star::star2:


How to install and run


Features

Features for developers

  1. Add new languages in locales (we recommend using Poedit)
  2. Easily add new buttons and functionalities (query and inline) by implementing the abstract methods in the base button class
  3. Realtime visualizations for graph models and audio files (Kibana, ArangoDB)
  4. Abstraction and facade design pattern

Wide Range of Features :bulb:

  1. Search engine

  2. Search example screenshot Search example screenshot


    Result audio example screenshot
  3. Indexing features


  4. User limiting/controlling features


  5. User interface

  6. Main menu screenshot
  7. Admin features

  8. Other


Technology stack

Main tools & technologies used in developing TASE are as following:

  • Elasticsearch  
  • ArangoDB    
  • Pyrogram     
  • Python get_text 
  • Celery      
  • RabbitMQ    
  • Redis      
  • Pydantic     
  • Jinja       </ul> </div>

    Call for Contributions

    We welcome your expertise and enthusiasm!

    Ways to contribute to Telegram audio search engine:

    • Writing code
    • Review pull requests
    • Develop tutorials, presentations, documentation, and other educational materials
    • Translate documentation and readme contents

    We love your contributions and do our best to provide you with mentorship and support. If you are looking for an issue to tackle, take a look at issues.

    Issues

    If you happened to encounter any issue in the codes, please report it here. A better way is to fork the repository on Github and/or to create a pull request.

    Future work</h2> - [ ] Voice search - [ ] Add artist support - [ ]

    If you found it helpful, please give us a :star:

    </div>

    License

    TASE is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.