An open API service indexing awesome lists of open source software.

https://github.com/sudor2spr/quiz-polls-bot

Advanced Poll Bot! Create professional polls in any language with flexible formatting. 🎉 v1.0
https://github.com/sudor2spr/quiz-polls-bot

angel javascript multiple-quiz-bot node-js opleech poll quiz-bot sudor2spr telegram-poll-bot woodcraft

Last synced: 5 months ago
JSON representation

Advanced Poll Bot! Create professional polls in any language with flexible formatting. 🎉 v1.0

Awesome Lists containing this project

README

          



[![Typing SVG](https://readme-typing-svg.herokuapp.com?font=Fira+Code&pause=1000&color=4250F7&background=FF512800&center=true&vCenter=true&width=435&lines=%F0%9D%90%96%F0%9D%90%8E%F0%9D%90%8E%F0%9D%90%83%F0%9D%90%9C%F0%9D%90%AB%F0%9D%90%9A%F0%9D%90%9F%F0%9D%90%AD+%F0%9D%90%8C%F0%9D%90%A2%F0%9D%90%AB%F0%9D%90%AB%F0%9D%90%A8%F0%9D%90%AB+%F0%9D%90%99%F0%9D%90%A8%F0%9D%90%A7%F0%9D%90%9E%E2%84%A2)](https://git.io/typing-svg)





---
## 🗳️ Advanced Telegram Poll Bot

A powerful and multilingual Telegram bot to create professional-looking polls with various formats — including **basic polls**, **quiz polls**, and **multi-format polls**. Built using **Telegraf.js**, this bot supports persistent buttons, inline help, image replies, and rate limiting.

---

## 📌 Features

- 🎯 Basic, Quiz, and Multi-format Polls
- 🌐 Language-ready format (currently English, extensible)
- 🧠 Rate-limiting to avoid spam
- 📸 Welcome Image with Inline Buttons
- 🔄 Smart Message Editing for Help/Back buttons
- 🧩 Modular and easy-to-extend structure

---
## 🚀 Deploy

[![Deploy to Heroku](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/SudoR2spr/Quiz-polls-Bot)

[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/SudoR2spr/Quiz-polls-Bot)

## 🚀 Deployment

### 🧱 Prerequisites

- Node.js (v18 or above)
- Telegram Bot Token from [BotFather](https://t.me/BotFather)

---

### 📦 Installation

```bash
git clone https://github.com/SudoR2spr/Quiz-polls-Bot.git
cd Quiz-polls-Bot
npm install
```

---

### 🔧 Environment Variables

Create a `.env` file in the root directory with the following:

```env
BOT_TOKEN=your_bot_token_here
BASE_URL=https://your-app-url.com
PORT=3000
```

---

## 🏃‍♂️ Run the Bot

```bash
npm start
```

The bot will start and respond to the following commands:

---

## 🛠 Available Commands

| Command | Description |
|--------------|--------------------------------------------|
| /start | Sends welcome image and buttons |
| /help | Shows poll creation guide |
| /poll | Basic poll: `/poll "Question"` |
| /pollquiz | Quiz poll with explanation |
| /pollmult | Advanced format: options in A/B/C form |
| /future | (Planned) Show upcoming features |

---

## 🖼 Welcome Image & Buttons

The `/start` command sends an image with:

- ✅ Inline button: Help
- 🔗 External button: Join Channel

If message editing fails, the bot deletes the previous message and sends a new one.

---

## 📖 Example Usage

### Multi-format Poll:

```
/pollmult Which country has the largest Bengali-speaking population?
a) India
b) Bangladesh ✅
c) Pakistan
Based on 2023 language census data
```

### Quiz Poll:

```
/pollquiz What is the capital of France?
Paris ✅ | Berlin | Madrid
Correct answer is Paris.
```

---

## 🔒 Rate Limiting

To avoid abuse, each user can trigger a command once every **3 seconds**.
If exceeded, the bot replies:

> ❌ দয়া করে একটু অপেক্ষা করুন! খুব দ্রুত কমান্ড পাঠাচ্ছেন।

---

## 💡 Planned Features

- 🔄 Multi-language UI
- 🕑 Scheduled Polls
- 📊 Poll Analytics Dashboard
- 📄 Poll Templates

---

## 📜 License

MIT License © [SudoR2spr]
See the [LICENSE](./LICENSE) file for more info.

# Connect with me













-----
♥️ Credits: [𝐖𝐎𝐎𝐃𝐜𝐫𝐚𝐟𝐭](https://t.me/Farooq_is_KING)

[![Contact Me On Telegram](https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/Farooq_is_king)




Last Updated: Sat,May,31,2025