{"id":20614888,"url":"https://github.com/threeal/discord-bot-starter","last_synced_at":"2026-04-11T07:04:39.145Z","repository":{"id":261819473,"uuid":"885434437","full_name":"threeal/discord-bot-starter","owner":"threeal","description":"A minimalist template for starting a new Discord bot project","archived":false,"fork":false,"pushed_at":"2025-03-02T13:22:41.000Z","size":632,"stargazers_count":1,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-02T14:26:28.687Z","etag":null,"topics":["discord","discord-bot","discord-bot-template","docker","javascript","nodejs","template","templates","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/threeal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-08T15:21:29.000Z","updated_at":"2025-02-24T15:54:57.000Z","dependencies_parsed_at":"2024-11-08T16:38:34.255Z","dependency_job_id":"df5333a8-5d46-466b-a626-d6f3c3e3d482","html_url":"https://github.com/threeal/discord-bot-starter","commit_stats":null,"previous_names":["threeal/discord-bot-starter"],"tags_count":2,"template":true,"template_full_name":"threeal/nodejs-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/threeal%2Fdiscord-bot-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/threeal%2Fdiscord-bot-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/threeal%2Fdiscord-bot-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/threeal%2Fdiscord-bot-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/threeal","download_url":"https://codeload.github.com/threeal/discord-bot-starter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242269117,"owners_count":20100071,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discord","discord-bot","discord-bot-template","docker","javascript","nodejs","template","templates","typescript"],"created_at":"2024-11-16T11:13:49.434Z","updated_at":"2026-04-11T07:04:39.140Z","avatar_url":"https://github.com/threeal.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Discord Bot Starter\n\nA minimalist template for starting a new [Discord](https://discord.com/) bot project.\n\nThis template provides a basic Discord bot project containing a sample bot application that supports slash commands. The project is written in [TypeScript](https://www.typescriptlang.org/) and utilizes the [Sapphire](https://sapphirejs.dev/) framework to help create the bot application. To simplify deployment, this template includes support for building a [Docker](https://www.docker.com/) image of the bot project.\n\n## Key Features\n\n- Minimal Discord bot project written in TypeScript with [ESM](https://nodejs.org/api/esm.html) support.\n- Uses Sapphire as the framework for creating the Discord bot application.\n- Supports building the Discord bot application as a Docker image.\n- Uses [pnpm](https://pnpm.io/) as the package manager.\n- Supports formatting with [Prettier](https://prettier.io/) and linting with [ESLint](https://eslint.org/).\n- Fixes formatting and linting during pre-commit hooks using [Lefthook](https://lefthook.dev/).\n- Preconfigured workflows for [Dependabot](https://docs.github.com/en/code-security/dependabot) and [GitHub Actions](https://github.com/features/actions).\n\n## Usage\n\nThis guide explains how to use this template to start a new Discord bot project, from creation to deployment.\n\n### Create a New Project\n\nFollow [this link](https://github.com/new?template_name=discord-bot-starter\u0026template_owner=threeal) to create a new project based on this template. For more information about creating a repository from a template on GitHub, refer to [this documentation](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template).\n\nAlternatively, you can clone this repository locally to begin using this template.\n\n### Choose a License\n\nBy default, this template is [unlicensed](https://unlicense.org/). Before modifying this template, replace the [`LICENSE`](./LICENSE) file with the license to be used by the new project. For more information about licensing a repository, refer to [this documentation](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository).\n\nAlternatively, you can remove the `LICENSE` file or leave it as-is to keep the new project unlicensed.\n\n### Update the Readme File\n\nUpdate the content of this [`README.md`](./README.md) file with a description of the new project. For more information on adding READMEs to a project, refer to [this documentation](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes).\n\n### Set Up the Tools\n\nThis template uses [pnpm](https://pnpm.io/) as the package manager. If pnpm is not installed, follow [this guide](https://pnpm.io/installation) to install it. Then, install the project dependencies with:\n\n```sh\npnpm install\n```\n\nFor more information on pnpm, including adding dependencies or running tools, refer to [this documentation](https://pnpm.io/pnpm-cli).\n\n### Set Up the Bot Application\n\nBefore developing the bot application, ensure that you have set up a bot application and obtained a token to be used to access the bot. If not, refer to [this documentation](https://discord.com/developers/docs/quick-start/getting-started) for setting up a new bot application and getting the access token.\n\nAfter obtaining the access token, export it as a `DISCORD_TOKEN` variable in your shell environment.\n\n### Develop the Bot Application\n\nDevelop the bot application by modifying the files under the [`src`](./src) directory according to the project requirements. For more detailed guidance on developing the bot application, refer to the [Sapphire documentation](https://sapphirejs.dev/docs/General/Welcome) and the [TypeScript documentation](https://www.typescriptlang.org/docs/).\n\nAfter you're done, run the bot application using the following command:\n\n```sh\npnpm start\n```\n\n### Deploy the Bot Application\n\nThe bot application can simply be deployed by running the `pnpm start` command on a specific machine. Alternatively, the bot application can also be deployed as a [Docker](https://www.docker.com/) container, allowing it to run as a service while keeping the application contained in an isolated environment.\n\nTo do this, first, build the bot application into a Docker image using the following command:\n\n```sh\ndocker build -t discord-bot .\n```\n\nThen run the Docker image as a service using the following command:\n\n```sh\ndocker run -dt -e DISCORD_TOKEN=$DISCORD_TOKEN discord-bot\n```\n\nRefer to [this documentation](https://docs.docker.com/guides/) for more information on using Docker for managing containerized applications.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthreeal%2Fdiscord-bot-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthreeal%2Fdiscord-bot-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthreeal%2Fdiscord-bot-starter/lists"}