fast-stream-bot

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2026 License: MIT

README

Fast Stream Bot

Fast Stream Bot is a high-performance Telegram bot that lets you generate streamable and downloadable links for any file you send to it. It features a credit system, referral program, and admin tools, making it perfect for managing file sharing.

Quick Start

The easiest way to install Fast Stream Bot is using our installer script. Run the following command in your terminal:

curl -sfL https://raw.githubusercontent.com/biisal/fast-stream-bot/main/install.sh | bash

This will automatically download the latest version for your system and install it to ~/.fast-stream-bot/bin.

Configuration

Before running the bot, you need to configure it.

  1. Create a folder for your bot:

    mkdir my-bot
    cd my-bot
    
  2. Create a .env file: This file holds your secret keys. Create a file named .env and paste the following (fill in your values):

    BOT_TOKENS=your_bot_token_from_botfather
    APP_KEY=your_telegram_app_id
    APP_HASH=your_telegram_app_hash
    ADMIN_ID=your_telegram_user_id
    HTTP_PORT=8000
    FQDN=http://your-server-ip:8000
    LOG_CHANNEL_ID=-100xxxxxxxxxx
    DB_CHANNEL_ID=-100xxxxxxxxxx
    MAIN_CHANNEL_ID=-100xxxxxxxxxx
    MAIN_CHANNEL_USERNAME=your_channel_username
    DBSTRING=your-psql-connection-string (get it from neon.com db [one day we will sponsor .. lol])
    REDIS_DBSTRING=your-redis-connection-string (get it from upstash.com)
    

    Note: You can get APP_KEY and APP_HASH from my.telegram.org.

  3. Create a config.toml file: This file holds application settings. Create a file named config.toml:

    app_name = "Fast Stream Bot"
    env_file = ".env"
    header_image = "https://some-image_url-or-path.com"
    
    # Credit System Configuration
    max_credits = 500
    min_credits_required = 5
    initial_credits = 50
    increment_credits = 10
    decrement_credits = 10
    

Running the Bot

Once installed and configured, simply run:

fast-stream-bot

You should see the startup logo and a message indicating the bot is valid and running.

Run with Docker

You can also run the bot using Docker. This method ensures you have a consistent environment.

  1. Build the Docker image:

    docker build -t fast-stream-bot .
    
  2. Run the container:

    docker run -d \
      --name fast-stream-bot \
      -p 8000:8000 \
      -v $(pwd)/config.toml:/app/config.toml \
      -v $(pwd)/.env:/app/.env \
      fast-stream-bot
    

Features at a Glance

  • Instant Links: Stream or download files instantly.
  • Credit System: Control usage with a built-in credit system.
  • Channel Lock: Force users to join a channel to use the bot.
  • Admin Dashboard: Ban/unban users and broadcast messages directly from the bot.

For Developers

If you want to contribute or build from source, follow these steps.

Prerequisites
Build from Source
  1. Clone the repository:

    git clone https://github.com/biisal/fast-stream-bot.git
    cd fast-stream-bot
    
  2. Run in development mode:

    make dev
    
  3. Build production binary:

    make build
    

License

MIT

Directories

Path Synopsis
cmd
fsb command
Package config contains configuration for codeltix-stream-app
Package config contains configuration for codeltix-stream-app
internal
bot
Package bot contains telegram bot
Package bot contains telegram bot
bot/commands
Package commands contains commands of bot
Package commands contains commands of bot
database/psql
Package db contains database related functions
Package db contains database related functions
http-server/handlers
Package handlers contains the handlers for the http server
Package handlers contains the handlers for the http server
service/user
Package user contains user service
Package user contains user service
Package logger provides a logger that writes to both stdout and a file.
Package logger provides a logger that writes to both stdout and a file.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL