Full README
This commit is contained in:
126
README.md
126
README.md
@@ -1,3 +1,127 @@
|
|||||||
# Civita
|
# Civita
|
||||||
|
|
||||||
Civita is a multifunctional and a lightweight discord bot coded on TypeScript
|
Civita is a multifunctional and lightweight Discord bot built with **TypeScript**.
|
||||||
|
It’s designed to be fast, modular, and easy to maintain — providing essential utilities, moderation tools, and fun features for your Discord community.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✨ Features
|
||||||
|
|
||||||
|
- 🧹 **Moderation** — Kick, ban, mute and manage your server with ease.
|
||||||
|
- 🎉 **Fun & Games** — Engage users with AI, QOTD(questions of the day), and other fun commands.
|
||||||
|
- ⚙️ **Customizable** — Easily configurable settings via /setup command.
|
||||||
|
- 🚀 **Lightweight & Fast** — Optimized with TypeScript for performance and maintainability.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧰 Tech Stack
|
||||||
|
|
||||||
|
- [TypeScript](https://www.typescriptlang.org/)
|
||||||
|
- [Node.js](https://nodejs.org/)
|
||||||
|
- [Discord.js](https://discord.js.org/)
|
||||||
|
- [Google-GenAI](https://aistudio.google.com/)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Installation
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
- Node.js v18 or later
|
||||||
|
- Discord Bot Token ([create one here](https://discord.com/developers/applications))
|
||||||
|
- PnPm
|
||||||
|
- Google GenAI Key ([create one here](https://aistudio.google.com/api-keys))
|
||||||
|
|
||||||
|
### Setup
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Clone the repository
|
||||||
|
git clone https://git.optimihost.com/NaChlorid/civita.git
|
||||||
|
cd civita
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
pnpm install
|
||||||
|
|
||||||
|
# Configure environment variables
|
||||||
|
cp .env.example .env
|
||||||
|
# Edit .env and add your Discord bot token
|
||||||
|
|
||||||
|
# Build the project
|
||||||
|
pnpm run build
|
||||||
|
|
||||||
|
# Start the bot
|
||||||
|
npx dist/index.js
|
||||||
|
````
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚙️ Configuration
|
||||||
|
|
||||||
|
Your `.env` file should look like this:
|
||||||
|
|
||||||
|
```env
|
||||||
|
DISCORD_TOKEN=(DISCORD TOKEN)
|
||||||
|
GEMINI_API_KEY=(GOOGLE GENAI KEY)
|
||||||
|
DISCORD_CLIENT_ID=(DISCORD APPLICATION ID)
|
||||||
|
|
||||||
|
DATABASE_HOST=127.0.0.1
|
||||||
|
DATABASE_PORT=3306
|
||||||
|
DATABASE_USER=(DATABASE USER)
|
||||||
|
DATABASE_PASSWORD=(DATABASE PASSWORD)
|
||||||
|
DATABASE_NAME=(DATABASE NAME)
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also customize command prefixes, logging options, and more depending on your setup.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧑💻 Development
|
||||||
|
|
||||||
|
To start a development environment:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧱 Project Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
civita/
|
||||||
|
├── src/
|
||||||
|
│ ├── commands/
|
||||||
|
│ ├── events/
|
||||||
|
│ ├── utils/
|
||||||
|
│ └── index.ts
|
||||||
|
├── .env.example
|
||||||
|
├── package.json
|
||||||
|
├── tsconfig.json
|
||||||
|
└── README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧩 Contributing
|
||||||
|
|
||||||
|
Contributions are welcome!
|
||||||
|
Feel free to fork this repository and submit a pull request.
|
||||||
|
Make sure your code follows the existing style and passes all lint checks before submitting.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🪪 License
|
||||||
|
|
||||||
|
This project is licensed under the **MIT License**.
|
||||||
|
See the [LICENSE](LICENSE) file for details.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 💬 Support
|
||||||
|
|
||||||
|
If you encounter issues or have suggestions, please open an issue on GitHub.
|
||||||
|
You can also reach out via the Discord server (if available).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> Civita — simple, modular, and made to elevate your Discord experience.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user