vectom-core
v1.0.0
Published
Modern Discord framework
Readme
Vectom Core
Vectom Core is a small, focused Discord bot framework and project scaffold tool.
It provides a lightweight VectomClient wrapper around discord.js, a tiny
command decorator helper, and a CLI generator that scaffolds bot projects
quickly with sensible defaults.
Goals
- Make building a Discord bot simple and predictable.
- Provide an easy-to-use CLI to scaffold new projects (
npx vectom-core). - Keep the core library minimal so you can extend it as needed.
Features
VectomClient— simple client wrapper that manages command registration and interaction routing.command()decorator helper for consistent command definitions.- CLI generator that creates a ready-to-run project (JavaScript or TypeScript)
including
package.json,tsconfig.json(for TS),.env, basic command and event files.
Quick start
Local development (from repository root):
# build core and cli
npm run build
# run the CLI locally via npx with the packed tarball
npm pack
npx ./vectom-core-1.0.0.tgzInstall from npm (after publishing):
npx vectom-coreUsage
The CLI walks you through creating a new bot project. After creation:
cd your-bot
npm startAPI
Exported modules in src:
VectomClient— extendsdiscord.jsClient and providescommand()registration and astart(token)helper.command(data)— returns the command definition object (thin helper).Logger— tiny logging helpers (success,error,warn,info).hasPermission(member, key)— permission helper mapping common keys.
Publishing tips
- Bump the package
versioninpackage.jsonbefore publishing. - Ensure
dist/andcli/dist/are present (runnpm run build). - Use
npm publish --access publicfor public packages.
Contributing
Contributions are welcome. Please open issues for bugs or feature requests. Keep changes focused and add tests or examples where appropriate.
License
MIT
If you want, I can also:
- Wire
commandTypeandfeatureschoices into the CLI scaffold output. - Add
.gitignoreand a basicREADMEtemplate for generated projects. - Remove inline comments from sources (tell me which files to process).
