Git Product home page Git Product logo

tscord's Introduction

Latest version

Build state Repo size Stars count

What is TSCord

TSCord is a fully-featured discord bot template written in Typescript, intended to provide a framework that's easy to use, extend and modify.

It uses discordx and discord.js v14 under the hood to simplify the development of discord bots.

This template was created to give developers a starting point for new Discord bots, so that much of the initial setup can be avoided and developers can instead focus on meaningful bot features. Developers can simply follow the installation and the configuration instructions, and have a working bot with many boilerplate features already included!

ใ…ค

ใ…ค To know how to use TSCord and all its components, check the documentation here ใ…ค

But TSCord is not only a Discord bot template...

A ready-to-use fancy dashboard for your TSCord bot!

Static front homepage for your TSCord-based bot!

tscord-website.preview.mp4

A really useful CLI meant to initialize a new TSCord project, generate files by type or even manage plugins!

tscord-cli.preview.mp4

TSCord template is fully extensible thanks to the plugin eco-system!


๐Ÿ“œ Features

Talking about features, here are some of the core features of the template:

  • Advanced handlers for:
    • Interactions (slash, context menu, button, modal, select menu, etc)
    • Simple message commands
    • Discord events listeners
  • Guards functions, acting like middlewares on handlers with some built-ins:
    • Rate limiter
    • Maintenance mode
    • Disabling command
    • Guild only command (no DMs)
    • NSFW only command
    • Message's content match using regex
  • Internal API to interact with the bot from external services, with built-in useful endpoints
  • Multiple databases support out-of-the-box using Mikro-ORM
  • Migrations system to keep a safe database
  • Custom events handlers
  • Advanced error handler
  • Fully-typed localization (i18n)
  • Local store to manage global state through the app
  • Advanced logger with log files and discord channels support
  • Scheduler for cron jobs
  • Built-in rich statistics system
  • Automatic static assets upload to imgur
  • WebSocket server with decorators driven events system

This template is also developer friendly and follow strict design patterns to ease its maintenance:

  • Written in Typescript
  • Built around the Dependency Injection and Singleton patterns
  • Use of battle-tested libraries under the hood (discordx and discord.js)
  • Built-in debugging setup for VSCode
  • Support for running with the PM2 process manger
  • Support for running with Docker
  • CI/CD integration with Github Actions

and many more!

๐Ÿ“š Documentation

Check the official documentation to get started and understand how to use this template.

You can also find useful documentations at:

๐Ÿ“ข Support

If you need support on the template or just want to exchange with us, don't hesitate to join the official Discord support server!

After joining it, select the TSCord role to access the category within the server.

๐ŸŒ Roadmap

Click here to access the milestone roadmap

๐Ÿ“‘ License

MIT License

Copyright (c) barthofu

tscord's People

Contributors

barthofu avatar mr-artemus avatar dependabot[bot] avatar sykhodev avatar airone01 avatar dmsavchik 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.