Aethel Bot OSS repository! aethel.xyz
bot fun ai discord discord-bot aethel
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat:: Better /help command with banner and more separators!

+41 -9
+15 -1
src/commands/info/help.ts
··· 11 11 ButtonStyle, 12 12 SeparatorBuilder, 13 13 SeparatorSpacingSize, 14 + MediaGalleryBuilder, 15 + MediaGalleryItemBuilder, 14 16 type MessageActionRowComponentBuilder, 15 17 } from 'discord.js'; 16 18 ··· 57 59 ]); 58 60 59 61 const container = new ContainerBuilder() 60 - .setAccentColor(0x5865f2) 62 + .setAccentColor(0xf4f4f4) 63 + 64 + .addMediaGalleryComponents( 65 + new MediaGalleryBuilder().addItems( 66 + new MediaGalleryItemBuilder().setURL( 67 + 'https://aethel.xyz/aethel_banner_white.png' 68 + ) 69 + ) 70 + ) 61 71 .addTextDisplayComponents(new TextDisplayBuilder().setContent(`# ${title || 'Aethel Bot'}`)) 62 72 .addTextDisplayComponents( 63 73 new TextDisplayBuilder().setContent(description || 'Get information about Aethel') 64 74 ) 75 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 65 76 .addTextDisplayComponents( 66 77 new TextDisplayBuilder().setContent( 67 78 `\n## **${linksSocialText || 'Links & Social Media'}**` ··· 72 83 '[Website](https://aethel.xyz) • [GitHub](https://github.com/aethel-labs/aethel) • [Bluesky](https://bsky.app/profile/aethel.xyz)' 73 84 ) 74 85 ) 86 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 75 87 .addTextDisplayComponents( 76 88 new TextDisplayBuilder().setContent(`\n## **${featuresText || 'Features'}**`) 77 89 ) ··· 85 97 '**Multi-language** - Supports multiple languages' 86 98 ) 87 99 ) 100 + 88 101 .addSeparatorComponents( 89 102 new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large).setDivider(true) 90 103 ) ··· 93 106 `-# ${dashboardText || 'Dashboard available at https://aethel.xyz/login for To-Dos, Reminders and custom AI API key management'}` 94 107 ) 95 108 ) 109 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 96 110 .addActionRowComponents( 97 111 new ActionRowBuilder<MessageActionRowComponentBuilder>().addComponents( 98 112 new ButtonBuilder()
+14 -6
src/events/interactionCreate.ts
··· 18 18 SeparatorBuilder, 19 19 SeparatorSpacingSize, 20 20 ButtonInteraction, 21 + type MessageActionRowComponentBuilder, 21 22 } from 'discord.js'; 22 23 23 24 type InteractionHandler = (...args: ClientEvents['interactionCreate']) => void; ··· 312 313 ]); 313 314 314 315 const container = new ContainerBuilder() 315 - .setAccentColor(0x5865f2) 316 + .setAccentColor(0xf4f4f4) 317 + 318 + .addMediaGalleryComponents( 319 + new MediaGalleryBuilder().addItems( 320 + new MediaGalleryItemBuilder().setURL('https://aethel.xyz/aethel_banner_white.png') 321 + ) 322 + ) 316 323 .addTextDisplayComponents( 317 324 new TextDisplayBuilder().setContent(`# ${title || 'Aethel Bot'}`) 318 325 ) 319 326 .addTextDisplayComponents( 320 - new TextDisplayBuilder().setContent( 321 - description || 322 - 'Enhance your server with fun commands, utilities, and AI-powered features.' 323 - ) 327 + new TextDisplayBuilder().setContent(description || 'Get information about Aethel') 324 328 ) 329 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 325 330 .addTextDisplayComponents( 326 331 new TextDisplayBuilder().setContent( 327 332 `\n## **${linksSocialText || 'Links & Social Media'}**` ··· 332 337 '[Website](https://aethel.xyz) • [GitHub](https://github.com/aethel-labs/aethel) • [Bluesky](https://bsky.app/profile/aethel.xyz)' 333 338 ) 334 339 ) 340 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 335 341 .addTextDisplayComponents( 336 342 new TextDisplayBuilder().setContent(`\n## **${featuresText || 'Features'}**`) 337 343 ) ··· 345 351 '**Multi-language** - Supports multiple languages' 346 352 ) 347 353 ) 354 + 348 355 .addSeparatorComponents( 349 356 new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large).setDivider(true) 350 357 ) ··· 353 360 `-# ${dashboardText || 'Dashboard available at https://aethel.xyz/login for To-Dos, Reminders and custom AI API key management'}` 354 361 ) 355 362 ) 363 + .addSeparatorComponents(new SeparatorBuilder().setSpacing(SeparatorSpacingSize.Large)) 356 364 .addActionRowComponents( 357 - new ActionRowBuilder<ButtonBuilder>().addComponents( 365 + new ActionRowBuilder<MessageActionRowComponentBuilder>().addComponents( 358 366 new ButtonBuilder() 359 367 .setStyle(ButtonStyle.Primary) 360 368 .setLabel(viewCommandsText || 'Commands')
web/public/aethel_banner_white.png

This is a binary file and will not be displayed.

+12 -2
web/src/components/Layout.tsx
··· 43 43 > 44 44 <div className="flex h-16 items-center justify-between px-6 border-b border-gray-200"> 45 45 <div className="flex items-center space-x-3"> 46 - <img className="w-8 h-8 rounded-lg object-contain" src="/bot_icon.png" alt="Aethel Bot" style={{ imageRendering: 'crisp-edges' }} /> 46 + <img 47 + className="w-8 h-8 rounded-lg object-contain" 48 + src="/bot_icon.png" 49 + alt="Aethel Bot" 50 + style={{ imageRendering: 'crisp-edges' }} 51 + /> 47 52 <h1 className="text-xl font-semibold text-gray-900">Aethel</h1> 48 53 </div> 49 54 <button ··· 128 133 <Menu className="h-5 w-5" /> 129 134 </button> 130 135 <div className="flex items-center space-x-3"> 131 - <img className="w-8 h-8 rounded-lg object-contain" src="/bot_icon.png" alt="Aethel Bot" style={{ imageRendering: 'crisp-edges' }} /> 136 + <img 137 + className="w-8 h-8 rounded-lg object-contain" 138 + src="/bot_icon.png" 139 + alt="Aethel Bot" 140 + style={{ imageRendering: 'crisp-edges' }} 141 + /> 132 142 <h1 className="text-xl font-semibold text-gray-900">Aethel</h1> 133 143 </div> 134 144 </div>