https://github.com/duca-club/duca-sentinel
Offiicial Discord bot for Deakin University Cybersecurity Association (DUCA)
https://github.com/duca-club/duca-sentinel
api bot deakin discord discord-js
Last synced: 12 months ago
JSON representation
Offiicial Discord bot for Deakin University Cybersecurity Association (DUCA)
- Host: GitHub
- URL: https://github.com/duca-club/duca-sentinel
- Owner: duca-club
- Created: 2025-03-10T03:41:10.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-10T11:55:51.000Z (12 months ago)
- Last Synced: 2025-06-10T12:42:02.317Z (12 months ago)
- Topics: api, bot, deakin, discord, discord-js
- Language: JavaScript
- Homepage:
- Size: 312 KB
- Stars: 1
- Watchers: 0
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DUCA Sentinel



Official Discord bot for the **Deakin University Cybersecurity Association (DUCA)** Discord community server.
DUCA Sentinel provides member verification, utility commands, and entertainment features to enhance the server experience.
## 📂 Project Structure
```
duca-sentinel/
├── .husky/ # Git pre-commit hooks
│
├── dist/ # Compiled JavaScript output
│
├── emojis/ # Custom emoji assets
│
├── src/
│ ├── commands/ # Discord slash commands
│ ├── config/
│ ├── events/ # Discord event handlers
│ ├── lib/ # External libraries
│ ├── utils/ # Utility/helper functions
│ └── index.ts
│
├── .env # Environment variables
├── .env.exampple # Example environment variables
├── .gitattributes # Git config
├── .gitignore # Git ignore
├── .gitlab-ci.yml
├── .prettierrc # Prettier config
├── CONTRIBUTING.md
├── package-lock.json
├── package.json # Project metadata & dependencies
├── README.md
└── tsconfig.json # TypeScript configuration
```
## 🚀 Getting Started
### Prerequisites
- **Node.js** (v22 or higher)
### Installation
1. **Clone the repository**
```bash
git clone https://github.com/duca-club/duca-sentinel.git
cd duca-sentinel
```
2. **Install dependencies**
```bash
npm install
```
3. **Set up environment variables**
Create a `.env` file in the root directory using the provided `.env.example` template:
```bash
cp .env.example .env
```
Configure environment variables:
| Variable | Description | Required |
|----------|-------------|----------|
| `DISCORD_TOKEN` | Your Discord bot token | ✅ |
| `GUILD_ID` | Discord server ID | ✅ |
| `DEV_ROLE_ID` | Developer role ID for dev commands | ✅ |
| `MEMBER_ROLE_ID` | Member role ID (for verification) | ✅ |
| `SUPABASE_URL` | Supabase project URL | ✅ |
| `SUPABASE_ANON_KEY` | Supabase anonymous key | ✅ |
4. **Build the project**
```bash
npm run build
```
5. **Start the bot**
```bash
npm start
```
## 🤝 Contributing
Please refer to the [contribution guideline](CONTRIBUTING.md) for more details.
## ❤️ Acknowledgements
Developing this project is possible thanks to the following tools:
- [discord.js](https://discord.js.org) - Powerful Node.js module that allows interaction with the Discord API.
- [CommandKit](https://commandkit.js.org) - A discord.js handler for commands and events.
- [Supabase](https://supabase.com) - Open-source Firebase alternative.
---
Made with ❤️ by dec1bel