GithubHelp home page GithubHelp logo

iepog / commandhandler Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 7 KB

Very simple but very useful command handler.

JavaScript 100.00%
command command-handler command-handlers javascript nodejs discordjs discord-js discord-js-example epog iepog filesystem file-handling filehandling filehandler filehandle file-handler node-js nodejs-example node-module

commandhandler's Introduction

commandhandler

Very simple but very useful command handler.

Installation

To install the node-module

npm install commandhandler.js

Code:

let ch = new (require('commandhandler.js'))();

Methods

  • .init(path, extension)
//Gets all commands on specified path then initialize all files if file extension correct 
  • .has(commandName)
//Checks if command exist. If Exist: returns command. If not Exits returns false
  • .get()
// Returns all initialized files
  • .files
// Returns all initialized files
  • .path
// Returns folder path

Example (with a Discord.js)

Main File:

let ch = new (require('commandhandler.js'))();

let Discord= require('discord.js');
let client = new Discord.Client();

let prefix = "+";

client.on('ready',()=>console.log('Bot Ready'));


client.on('message', (message) => {
   if(message.author.bot) return;
   if (!message.content.startsWith(prefix)) return;
   const args = message.content.slice().trim().split(/ +/g);
   let cmd = ch.has(args.shift().slice(prefix.length).toLowerCase());
   if (cmd) cmd(client, message, args);
});

client.login("YOUR BOT TOKEN");

ch.init(__dirname+'/commands/','.js');

./commands/say.js

exports.run = (client,message,args) => {
    message.channel.send('['+message.author.tag+ ']: ' +args.join(' '));

}

exports.name= "say"; 

Example 2

Main File:

let ch = new (require('commandhandler.js'))();

ch.on('ready',()=>{

   console.log('Command handler are initialized');
   
     console.log('All Files: ',ch.files,'Running "log.js" ');
     ch.files.log('./log.txt', '['+Date.now()+'] Test Function Working!');
     
});


ch.init(__dirname+'/commands/','.js');

./commands/log.js:

let fs =require('fs');

exports.run = (path,data) => {

    fs.writeFileSync(path, data+'\n', { flag: 'a' });
    
    let file =fs.readFileSync(path).toString();
    
    if(!file) file= data;
    
    return file;
};

exports.name= "log";

Then look at the log.txt file:

[1634320812437] Test Function Working!
[1634320817816] Test Function Working!
[1634320819018] Test Function Working!
[1634320819813] Test Function Working!

It works

commandhandler's People

Contributors

iepog avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.