The Need for HTTP-First Discord Bots
A Discord application does not need a gateway connection to answer slash commands. Discord canPOST every
interaction to an HTTPS endpoint, and the application only has to verify the signature and reply.
That model fits how most bots are actually deployed today: stateless processes, horizontal scaling, serverless-style
platforms, zero-downtime rollouts. A gateway client, by contrast, holds a long-lived socket, needs shard coordination,
and must be resident even when nothing is happening.
@wolfstar/http-framework owns exactly that surface: the HTTP server, Discord request
verification, interaction routing, piece stores, and the application-command registry.
Small Packages Over One Framework
Stars Components is a monorepo of focused packages rather than a single dependency. Infrastructure helpers work in any Node.js application; the framework packages form an optional stack on top of them.@wolfstar/safe-fetch or @wolfstar/logger in an existing
service costs one dependency and no framework buy-in. See Architecture for how the layers relate.
The split goes further than one repository. Optional @wolfstar/http-framework extensions — a REST API server, i18n,
modular subcommands — live in their own wolfstar-project/plugins
repository and release independently of the core framework, so picking one up never bumps
@wolfstar/http-framework itself. See the Plugins guide.
Types as the Contract
Every package exposes its supported API throughsrc/index.ts and explicit package.json export maps, so private
implementation files never become accidental public contracts. The API reference is generated from those entry
points on every documentation build — it cannot drift from the code.
The same idea runs through the packages themselves: typed environment keys in
@wolfstar/env-utilities, typed translation keys in
@wolfstar/plugin-i18next, Result values instead of thrown errors in
@wolfstar/safe-fetch.
Testable by Construction
Commands and listeners are plain classes discovered by a store, so they can be reloaded and tested independently.@wolfstar/http-framework-test-utils dispatches interaction fixtures without
starting a network server — see Testing Interactions.
Next Steps
- Features — what ships in the box
- Getting Started — create a bot in one command