An open-source Discord bot designed to enhance community interaction with a variety of engaging and useful features.
Lanya is a Discord bot built to improve server engagement and provide useful tools for both administrators and members. With commands ranging from fun interactions to powerful moderation tools.
- 🎉 Fun Commands - Keep your community engaged with trivia, jokes, games, and more
- 🛠️ Moderation Tools - Maintain server order with comprehensive moderation capabilities
- 🔧 Utility Functions - Provide practical tools like calculators, translators, and weather reports
- 🎮 Minecraft Integration - Connect your Discord server with Minecraft through server status monitoring and skin visualization
- 📈 Leveling System - Encourage engagement with an XP-based leveling system
- 🎁 Giveaways - Host and manage giveaways with customizable requirements
- 👋 Welcome System - Greet new members with customizable welcome messages
ℹ️ Info Commands
Command | Description |
---|---|
/botinfo |
Display information about the bot |
/help |
Show help menu with all commands |
/ping |
Check the bot's response time |
/roleinfo |
View detailed information about a role |
/serverinfo |
Display information about the server |
/userinfo |
Show information about a user |
/invite |
Shows bot invite link |
/support |
Get invite link to the support server |
🎈 Fun Commands
Command | Description |
---|---|
/8ball |
Ask the magic 8-ball a question |
/catfact |
Get a random fact about cats |
/coinflip |
Flip a coin |
/dadjoke |
Hear a random dad joke |
/dogfact |
Get a random fact about dogs |
/joke |
Receive a random joke |
/meme |
View a random meme |
/pp |
Check the size of your... nevermind |
/randomnumber |
Generate a random number |
/trivia |
Test your knowledge with a trivia question |
🔨 Moderation Commands
Command | Description |
---|---|
/ban |
Ban a user from the server |
/clear |
Delete multiple messages at once |
/kick |
Kick a user from the server |
/lock |
Lock a channel to prevent messages |
/nick |
Change a user's nickname |
/timeout |
Timeout a user for a specified duration |
/unban |
Unban a user from the server |
/unlock |
Unlock a previously locked channel |
/untimeout |
Remove a timeout from a user |
/warn |
Warn a user for inappropriate behavior |
/warnings |
View a user's warning history |
🪛 Utility Commands
Command | Description |
---|---|
/calculator |
Perform mathematical calculations |
/define |
Look up the definition of a word |
/todo |
Manage your personal to-do list |
/translate |
Translate text between languages |
/weather |
Check the weather for a specified location |
⚙️ Admin Commands
Command | Description |
---|---|
/giveaway |
Create and manage giveaways |
/leveladmin |
Configure the leveling system |
/welcome |
Set up custom welcome messages |
/guildsettings |
Manage server-specific settings |
/autorole |
Configure roles to be automatically assigned to new members |
🌎 Minecraft Commands
Command | Description |
---|---|
/achievement |
Generate a Minecraft achievement image |
/addserverstatus |
Add a Minecraft server to monitor |
/bodyavatar |
View a player's body avatar |
/fullbody |
View a player's full body model |
/headavatar |
View a player's head avatar |
/listserverstatus |
List all monitored Minecraft servers |
/playerhead |
Get a player's head image |
/removeserverstatus |
Stop monitoring a Minecraft server |
/serverstatus |
Check the status of a monitored server |
/skin |
View a player's skin |
📊 Level Commands
Command | Description |
---|---|
/level |
Check your current level and XP |
/leaderboard |
View the server's level leaderboard |
For any assistance, feature requests, or bug reports, join our official support server:
- Node.js (v16.9.0 or higher)
- MongoDB database
- Discord Bot Token
- Weather API key (for weather commands)
- Clone the Repository
git clone https://github.com/birajrai/Lanya.git
cd Lanya
- Install Dependencies
npm install
- Enter Your Configuration Details
The setup script will prompt you to enter:
- Discord Bot Token
- Client ID
- Weather API Key
- MongoDB Connection String
- Start the Bot
npm run start
For production environments:
npm run start:prod
Lanya/
├── commands/ # Command files organized by category
├── events/ # Event handler files
├── models/ # Database models
├── utils/ # Utility functions
├── config.json # Configuration file (generated by setup)
├── index.js # Main entry point
└── setup.js # Interactive setup script
- Create a new command file in the appropriate category folder
- Use the command template structure
- Register the command in the command handler
Example command structure:
module.exports = {
name: 'commandname',
description: 'Command description',
options: [], // Slash command options
execute: async (interaction, client) => {
// Command code here
},
};
Contributions are welcome and appreciated! Here's how you can contribute:
- Fork the repository
- Create a new branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Please make sure to update tests and documentation as appropriate.
We strive to maintain a friendly, inclusive, and respectful community. Please follow these guidelines:
- Be Respectful: Treat others with respect. Disagreements are okay, but be civil.
- Be Inclusive: We welcome all contributions and encourage participation from everyone.
- Be Supportive: Help others when they have questions and be open to feedback.
This project is licensed under the MIT License - see the LICENSE file for details.
- Server logs system
- Advanced auto-moderation features
- Custom command creation interface
- Web dashboard for easy configuration
- Enhanced Minecraft integration features
- Music playback capabilities
- Role reaction system
Have suggestions? Feel free to share them in our Support Server!