🤖 Powerful Nest module for easy and fast creation Telegram bots
Go to file
2021-01-03 02:39:50 +03:00
.github chore: add dependabot configuration file (#92) 2020-08-14 00:54:45 +03:00
lib refactor(): use ExternalContextCreator 2021-01-03 02:39:50 +03:00
sample feat!(): add custom execution context 2021-01-03 01:30:57 +03:00
website feat!(): add custom execution context 2021-01-03 01:30:57 +03:00
.all-contributorsrc docs: visual fixes in docs 2020-05-03 12:46:24 +03:00
.eslintrc.js chore: replace tslint with eslint (pull request #1) 2020-03-27 20:41:55 +00:00
.gitignore chore(): add lock files to gitignore 2021-01-02 15:23:59 +03:00
.npmignore feat(): mvp 2020-12-26 16:11:09 +03:00
.prettierrc feat: complete rewrite 2020-03-19 16:21:35 +03:00
LICENSE.md chore: update meta info 2020-04-24 13:59:33 +03:00
package-lock.json chore(): update package-lock 2020-12-23 17:54:25 +03:00
package.json feat(): use last telegraf release 2021-01-02 15:23:30 +03:00
README.md fix: website domain 2020-09-10 00:26:12 +03:00
tsconfig.json feat!(): add custom execution context 2021-01-03 01:30:57 +03:00

Nest Logo

NestJS Telegraf

npm GitHub last commit NPM

Telegraf module for NestJS.

Documentation

If you want to dive fully into NestJS Telegraf then don't waste your time in this dump, check out the documentation site.

Installation

$ npm i nestjs-telegraf

Once the installation process is complete, we can import the TelegrafModule into the root AppModule:

import { Module } from '@nestjs/common';
import { TelegrafModule } from 'nestjs-telegraf';

@Module({
  imports: [
    TelegrafModule.forRoot({
      token: 'TELEGRAM_BOT_TOKEN',
    })
  ],
})
export class AppModule {}

Then add some decorators into the app.service.ts for handling Telegram bot API updates:

import { Injectable } from '@nestjs/common';
import {
  Start,
  Help,
  On,
  Hears,
  Context,
} from 'nestjs-telegraf';

@Injectable()
export class AppService {
  @Start()
  start(ctx: Context) {
    ctx.reply('Welcome');
  }

  @Help()
  help(ctx: Context) {
    ctx.reply('Send me a sticker');
  }

  @On('sticker')
  on(ctx: Context) {
    ctx.reply('👍');
  }

  @Hears('hi')
  hears(ctx: Context) {
    ctx.reply('Hey there');
  }
}

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

People

License

Nest is MIT licensed.

Contributors

Thanks goes to these wonderful people (emoji key):


Eldar Salimzebarov

🐛

Vito Macchia

💻 🐛

KITAHARA SETSUNA

💻 🐛

Aleksandr Bukhalo

💻 📖 👀

Vyacheslav Saloid

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!