A welcome bot for Nerimity that sends custom HTML embeds when users join a server.
- Custom HTML welcome embeds with user avatars and galaxy background
- Auto-detects welcome channel (last active channel in server)
- Note: This auto-detection can be unreliable - use
/setwelcomechannelinstead
- Note: This auto-detection can be unreliable - use
/setwelcomechannelcommand to lock welcome channel (requires admin)- Test command:
cool!testing!testing!command - Persistent channel storage using JSON
- Node.js (v16 or higher)
- A Nerimity bot token
- npm or yarn
-
Install dependencies:
npm install
-
Configure your bot token:
Copy
.env.exampleto.env:cp .env.example .env
Edit
.envand replaceyour_bot_token_herewith your actual bot token:BOT_TOKEN=your_bot_token_here
-
Build the bot:
npm run build
-
Run the bot:
npm start
Or for development (build + run):
npm run dev
| Command | Description | Permission Required |
|---|---|---|
/setwelcomechannel |
Set a permanent welcome channel for the server | Admin |
cool!testing!testing!command |
Test the welcome embed in current channel | None |
welcomer/
├── src/
│ ├── index.ts # Main bot logic & event handlers
│ ├── welcomeCard.ts # HTML welcome embed builder
│ └── channelStore.ts # Persistent channel storage
├── build/ # Compiled JavaScript output
├── welcome-channels.json # Server → channel mappings
├── package.json
├── tsconfig.json
└── .env # Your bot token (gitignored)
| Script | Description |
|---|---|
npm run build |
Compile TypeScript to JavaScript |
npm start |
Run the compiled bot |
npm run dev |
Build and run in one command |
- Language: TypeScript
- Runtime: Node.js
- Bot SDK: @nerimity/nerimity.js
- Build Tool: TypeScript Compiler (tsc)
Want to contribute? Check out the Contributing Guide for:
- Development workflow
- Commit message conventions
- Pull request process
- Code style guidelines
| Variable | Required | Description |
|---|---|---|
BOT_TOKEN |
Yes | Your Nerimity bot authentication token |
Bot not sending welcome messages?
- Verify
BOT_TOKENis correctly set in.env - Check that the bot has permissions to send messages in the welcome channel
- Try setting a specific channel with
/setwelcomechannel
Build errors?
- Ensure you're using Node.js v16 or higher
- Delete
node_modulesandbuild/directories, then runnpm installandnpm run build
Welcome channel not updating?
- The bot tracks the most recently active channel automatically
- Use
/setwelcomechannelto lock a specific channel if auto-detection isn't working
This project is licensed under the ISC License - see the LICENSE file for details.