Skip to content
forked from zaida04/g.js-self

Monorepo for utilities used to interact with the Guilded API consisting of an API Wrapper, API Typings, Ratelimit handling, and more.

License

Notifications You must be signed in to change notification settings

MTM8/guilded.js

 
 

Repository files navigation

This project is currently in a Work In Progress stage and is not ready for usage yet.

guildedjs

A Node.js wrapper for the Guilded.gg API.
Written in TS

Join our Discord Server!


Linting TypeScript License: MIT Issues GitHub pull requests
NPM

Table of Contents

Usage

import Client from "guilded.js";
// Or const { Client } = require("guilded.js");
const client = new Client();

client.on('ready', () => {
  console.log(`Bot is successfully logged in`);
});

client.on("messageCreate", message => {
    if(message.content === "pogger") {
        return message.channel.send("poggers indeed");
    }
})

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

About

guildedjs is an API wrapper for Guilded.gg, a discord alternative. This was created due to the lack of an api wrapper written in TS for the guilded api.

Built With

  • node-fetch - make HTTP requests
  • ws - make WS connections
  • @discordjs/collection - Map extension utility

Getting Started

Prerequisites

You are expected to have an updated version of node.js. Guildedjs is tested on node.js >12.0.0 and we make no guarantees that it will work on earlier versions

Installation

  1. Install through NPM (recommended)
  • npm install @guildedjs/guilded.js
  1. Clone the repo and build
  • git clone https://github.com/guildedjs/guilded.js
  • cd guilded.js
  • npm i
  • npm run bootstrap
  • npm run build

Then proceed to move the related dirs to your node_modules

Documentation

Documentation will be coming once the project is at a usable state.

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Please ensure your commits pass the tests, lints, and builds. This means you should test it locally before pushing.

We make use of lerna to manage our monorepo. The main commands used are below

  • lerna add <module> [--scope=package-name] - add npm module dependency to all/specific package(s)
  • lerna create <package> - create a new package
  • npm run bootstrap = lerna bootstrap - recursively install dependencies in all packages and symlink local packages
  • lerna run <npm-script> - recursively execute command in all packages (must exist in each packages package.json)

TODO

  • Finish Typings for the Guilded API/WS 🚧
  • Rest Util ✅
  • Main Package:
    • Structures 🚧
    • GET Request Coverage ❌
    • POST Request Coverage ❌
    • PATCH Request Coverage ❌
    • DELETE Request Coverage ❌
    • Caching System
      • Built-In Caching System ✅
      • Allow custom caches ❌

LICENSING

guildedjs © zaida04, Released under the MIT License.

About

Monorepo for utilities used to interact with the Guilded API consisting of an API Wrapper, API Typings, Ratelimit handling, and more.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.7%
  • Shell 0.3%