Registry / communication / aidyn
library1.1.1jsnpmunverified

Aidyn is a lightweight, class-based framework designed for rapidly building Discord bot commands, abstracting away much of the boilerplate associated with `discord.js` interaction. It is currently at version 1.1.1, indicating a relatively early but stable stage of development. While no explicit release cadence is stated, its versioning suggests a focused development approach. Key differentiators include its class-based command architecture, native TypeScript support (as the project is built in TypeScript), built-in state management for data handling between commands, and an integrated feature for automatic database backup specifically with MongoDB. It aims to let developers jump straight to business logic for their bot commands, providing a structured approach on top of `discord.js`.

npm install aidyn
INSTALL
IMPORT
SIG · AIDYN
A
aidyn
communicationjavascriptv1.1.1
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Aidyn
import { Aidyn } from 'aidyn';
const { Aidyn } = require('aidyn');
Aidyn is primarily designed for modern JavaScript and TypeScript environments, favoring ESM imports.
Command
import { Command } from 'aidyn';
const { Command } = require('aidyn');
The base class for all custom bot commands. Extends this class to define command logic.
Message
import { Message } from 'discord.js';
import { Message } from 'aidyn';
While Aidyn wraps Discord.js, core Discord.js types like `Message` are imported directly from `discord.js` itself for type accuracy and direct API access.

Initializes and starts a Discord bot using Aidyn, defining a simple command that responds with processed message content. This example demonstrates class-based command creation and bot setup with environment variables for credentials.

import { Aidyn, Command } from 'aidyn'; import { Message } from 'discord.js'; // Assuming discord.js is installed class ExampleCommand extends Command { static NAME = 'example'; public Name(): string { return ExampleCommand.NAME; } public Namespace(): string { return 'ExampleNamespace'; } public async Run(message: Message): Promise<any> { const context = this.GetContext(message); // Process message content for args/flags return message.channel.send(`Command: %example was called with content ${JSON.stringify(context)}`); } } const commands: { [key: string]: typeof Command } = {}; commands[ExampleCommand.NAME] = ExampleCommand; // Ensure you have these environment variables set const botToken = process.env.DISCORD_BOT_TOKEN ?? 'YOUR_BOT_TOKEN_HERE'; const mongoConnectionString = process.env.MONGO_CONNECTION_STRING ?? ''; const aidyn = new Aidyn({ Prefix: '%', ConnectionString: mongoConnectionString, // Required for database features (MongoDB only) BotToken: botToken, Logging: 1 // Log commands. Use 0 for no logging, 2 for verbose (not recommended) }); aidyn.start(commands); console.log('Aidyn bot started with example command!');
Debug
Known issues
gotchaThe `Logging` parameter in the Aidyn constructor has a level `2` which is explicitly 'NOT RECOMMENDED' due to excessive verbosity. Stick to `0` for no logging or `1` for command logging to avoid performance issues or overwhelming console output.
fix
Set `Logging: 0` or `Logging: 1` in the Aidyn constructor. Avoid `Logging: 2` unless specifically debugging a critical issue and understand the performance implications.
affects: >=1.0.0
gotchaAidyn currently supports only MongoDB for its database features, including automatic backups. If your project requires a different database system, you will need to manage its integration externally without leveraging Aidyn's built-in capabilities.
fix
Ensure you have a MongoDB instance and a valid connection string if you plan to use Aidyn's database features. For other databases, implement custom data handling outside of Aidyn's provided mechanisms.
affects: >=1.0.0
gotchaThe framework primarily uses modern JavaScript (ESM) import syntax. Attempting to use CommonJS `require()` syntax for core `aidyn` modules may lead to runtime errors or unexpected behavior, especially in environments configured for ESM.
fix
Always use `import ... from 'aidyn'` for importing Aidyn components. Ensure your project's `package.json` is configured for ESM where appropriate (e.g., `"type": "module"`).
affects: >=1.0.0
breakingAidyn requires Node.js v8 LTS or higher. While this is an older version, running on unsupported or significantly older Node.js versions may lead to compatibility issues or missing features, as Discord.js and its dependencies evolve.
fix
Ensure your Node.js environment is at least v8 LTS. For best compatibility and security, it is recommended to use an active LTS version of Node.js (e.g., Node.js 18 or 20).
affects: <1.0.0
Errors
Common errors & fixes
DiscordAPIError: Missing Access
The bot token provided is invalid, missing, or has incorrect permissions for the requested operation.
fix
Verify that `BotToken` in the Aidyn constructor is correct and that your bot has all necessary intents and permissions enabled in the Discord Developer Portal.
MongoServerSelectionError: connect ECONNREFUSED <IP>:<PORT>
The MongoDB `ConnectionString` provided is incorrect, the MongoDB server is not running, or there's a network issue preventing connection.
fix
Double-check your `ConnectionString` in the Aidyn constructor. Ensure the MongoDB server is accessible from where your bot is hosted and that no firewalls are blocking the connection.
ReferenceError: Command is not defined
The `Command` base class was not imported before being extended.
fix
Add `import { Command } from 'aidyn';` to the top of your file where you define custom commands.
TypeError: aidyn.start is not a function
The `aidyn` instance was not correctly initialized, or `start` was called on a non-Aidyn object.
fix
Ensure you have `const aidyn = new Aidyn({...});` before calling `aidyn.start(commands);`. Double-check the casing and spelling of the method name.
Upgrade
Version history
1.1.1latest on npm
Audit
Dependencies
discord.jsrequiredCore library upon which Aidyn is built for Discord API interaction.
mongodboptionalRequired for database features, including automatic database backups.
Agent activity
59 hits · last 30 days
node
50
OpenAI (training)
1
Resources
aidyn — npm install aidyn · libregistry