/guildedeno

Interact with the guilded client api using deno!

Primary LanguageTypeScript

Guildedeno

Guildedeno is a deno wrapper for guilded api! You can view the docs here.

This package is not yet made completely! Make a pull request to make changes or create an issue for suggestions, bugs, etc!

Example

import { Client } from "https://raw.githubusercontent.com/Scientific-Guy/guildedeno/master/mod.ts";

const client = new Client({
    eventHandlers: {
        ready(){
            console.log(`Bot is ready!`);
        },
        messageCreate(message){
            if(message.content == '!ping'){
                message.send(`Ping: ${Date.now() - message.createdAt.getTime()}`);
            }
        }
    },
    cache: {
        users: true, // If set, it will cache users
        teams: true // By default its set to false. Setting it to true is preferred!
    },
    ws: {
        reconnect: true // Setting it to true will reconnect to client if the connection is closed
    }
});

client.login({
    email: 'Account email',
    password: 'Account password'
});

You can join the Unofficial Guilded api support server for more doubts regarding this.

What can guildedeno do?

  • Websocket api
    • Receive events
      • messageCreate
      • messageUpdate
      • messageDelete
      • channelSeen
      • teamSectionSeen
      • typing
      • channelCreate (Uses system message)
      • channelRename (Uses system message)
    • Customizable (Partially customizable)
    • Reconnection (Reconnection only at errors)
  • Get token by username and email
  • Send messages
  • Edit messages (Not yet made)
  • Delete messages
  • Role management
  • Parse role permissions
  • Fetch teams, users, channels, messages etc
  • Caching (Not fully made)
    • Cache only on options set
    • Cache limit (To be made)
    • Customized cache collector
  • Request Manager
    • Has fetch offset limit
    • Has ratelimit offset limit
    • Customizable fetching
  • Error handelling
    • Seperate errors for the package
    • Error event
  • Structures
    • Classful
    • Customizable (Partially customizable)
  • Sharding
    • Shard manager
    • Guilded client api is not supported for sharding. This features is still kept for future purposes.
  • Guides (No guide made yet as of the beta stage of the package)