Security News
New Proposed CISA Mandate Would Require Critical Infrastructure to Report Ransom Payments Within 24 Hours
CISA has proposed a set of new rules that would require critical infrastructure to report cyber incidents and ransom payments.
nestgram
Advanced tools
Framework for working with Telegram Bot API on TypeScript like Nest.js
Weekly downloads
Readme
Nestgram - Framework for working with Telegram Bot API on TypeScript like Nest.js
ℹ️ Nestgram in development. Current version is 1.8.7
If you found a bug, you can ask the author or ask the form
⚠️ Nestgram can't use Nest.js modules. But you can create own modules for Nestgram :)
You can read the guide on the official Nestgram website, on Medium website or here
You need to install nestgram at first. You can do this using yarn or npm
yarn add nestgram
// or
npm i nestgram
Our next step is creating the main file, so let's create the main.ts
file
import { NestGram } from 'nestgram';
import { AppModule } from './app/app.module';
async function bootstrap(): Promise<void> {
const bot = new NestGram('TOKEN', AppModule);
await bot.start();
}
bootstrap();
At first, we imported nestgram and our AppModule
, later we will create it. In the next step, we created a bootstrap function, in which we set up and run the project. The NestGram
class takes arguments:
Argument | Name | Required |
---|---|---|
1 | Bot token. You can get it here | Required |
2 | App module | Required |
3 | Config IPollingConfig or IWebhookConfig | Optional |
4 | Run config | Optional |
Let's create the app.module.ts
file. In it, we will describe all available controllers and services
import { Module } from 'nestgram';
import { AppController } from './app.controller';
import { AppService } from './app.service';
@Module({
controllers: [AppController],
services: [AppService],
})
export class AppModule {}
At first, we imported Module class from nestgram, AppController
and AppService
also, that we will create later. Then we described our controllers and services in @Module
decorator
Let's create the app.controller.ts
file. In it, we will describe updates, that we want to handle
import { OnCommand, Controller } from 'nestgram';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService?: AppService) {}
@OnCommand('start')
start(): string {
return 'Hello, world!';
}
}
We have created a controller where we describe an update when the user writes /start
, and we handle it by sending a message Hello, world!
Let's create the app.service.ts
file. In it, we will describe methods with working with db, that we will call in controller
import { Service } from 'nestgram';
@Service()
export class AppService {}
We can describe methods in AppService
class, and call it in controller by this.appService
To run the project, open a terminal in the project directory and type:
npm run dev
Or build and run production:
npm run build && npm run prod
Now you know about the syntax and structure of the Nestgram project, but if you want to write your own pro bot, you can check out the Nestgram documentation
FAQs
Framework for working with Telegram Bot API on TypeScript like Nest.js
The npm package nestgram receives a total of 63 weekly downloads. As such, nestgram popularity was classified as not popular.
We found that nestgram demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISA has proposed a set of new rules that would require critical infrastructure to report cyber incidents and ransom payments.
Security News
Redis is no longer OSS, breaking its explicit commitment to remain under the BSD 3-Clause License forever. This has angered contributors who are now working to fork the software.
Product
Socket AI now enables 'AI detected potential malware' alerts by default, ensuring users benefit from AI-powered state-of-the-art malware detection without needing to opt-in.