Skip to content

gramiojs/autoload

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@gramio/autoload

npm JSR JSR Score

Autoload commands plugin for GramIO.

Usage

full example

Important

Please read about Lazy-load plugins

Register the plugin

// index.ts
import { Bot } from "gramio";
import { autoload } from "@gramio/autoload";

const bot = new Bot(process.env.TOKEN as string)
    .extend(autoload())
    .onStart(console.log);

bot.start();

export type BotType = typeof bot;

Create command

// commands/command.ts
import type { BotType } from "..";

export default (bot: BotType) =>
    bot.command("start", (context) => context.send("hello!"));

Options

Key Type Default Description
pattern? string "**/*.{ts,js,cjs,mjs}" Glob patterns
path? string "./commands" the path to the folder
onLoad? (params: { absolute: string; relative: string }) => unknown the hook that is called when loading a file
onFinish? (paths: { absolute: string; relative: string }[]) => unknown; the hook that is called after loading all files

and other glob package options