Files
discordbot-ts-template/README.md

109 lines
2.1 KiB
Markdown

# Discord Bot with TypeScript
A modern Discord bot template built with TypeScript for scalable and maintainable bot development.
## Features
- 🤖 Discord.js v14 framework
- 📘 TypeScript for type safety
- ⚡ Slash commands support
- 🛠️ Development tools configured
- 🔧 Environment configuration
## Prerequisites
- Node.js (version 18 or higher)
- npm or yarn
- Discord Bot Token
## Installation
Clone this repository and install dependencies:
```bash
git clone https://github.com/Under-scape/discordbot-ts-template
cd discordbot-ts-template
npm install
```
## Configuration
1. Create a `.env` file in the root directory
2. Add your Discord bot token:
```env
DISCORD_TOKEN=your_bot_token_here
CLIENT_ID=your_client_id_here
```
## Available Scripts
### Development
```bash
npm run start
```
Start the bot.
### Build
```bash
npm run build
```
Compile TypeScript to JavaScript for production.
### Production
```bash
npm run start
```
Start the production bot (requires build first).
### Deploy Commands
```bash
npm run register
```
Deploy slash commands to Discord.
## Getting Started
1. Install dependencies: `npm install`
2. Configure your `.env` file with bot credentials
3. For start `npm run start`
## Scripts Workflow
For development:
```bash
npm run start
```
For production:
```bash
npm run start
```
## Docker Production Deployment
### Build and Deploy
Build the Docker image and run the container:
```bash
docker buildx build -t discord-bot . && docker run -d --restart unless-stopped --name discord-bot discord-bot
```
### Container Management
**Stop the container:**
```bash
docker stop discord-bot
```
**Start the container (after stop):**
```bash
docker start discord-bot
```
**View container logs:**
```bash
docker logs -f discord-bot
```
**Remove the container:**
```bash
docker rm discord-bot
```
### Complete Rebuild
Stop, remove, rebuild and redeploy:
```bash
docker stop discord-bot && docker rm discord-bot && docker buildx build -t discord-bot . && docker run -d --restart unless-stopped --name discord-bot discord-bot
```
---
**Note**: This template is based on community best practices and has been customized for Discord bot development.