An open-source Discord bot designed to enhance community interaction with a variety of engaging and useful features.
Lanya is a feature-rich 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, Lanya is the perfect addition to any Discord community.
- 🎉 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 |
/level |
Check your current level and XP |
/leaderboard |
View the server's level leaderboard |
🎈 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 |
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
- Run the Setup Script
npm run setup
- 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!