Skip to content

About

HTTP-first TypeScript framework and toolkit for building Discord applications.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

265 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Stars Components

An HTTP-first TypeScript framework and toolkit for Discord applications

Documentation · Core package · Official plugins

GitHub License Greptile: The War on Bugs codecov CodSpeed


Overview

Stars Components is a monorepo containing 23 independently versioned TypeScript packages under the @wolfstar npm scope. Its core is @wolfstar/http-framework, a framework for Discord applications that receive interactions over HTTP—well suited to webhook and serverless deployments without a persistent Gateway connection.

The ecosystem also includes a project scaffolder, development CLI, interaction test utilities, integrations, and reusable tooling. Optional features such as REST routes, i18n, logging transports, and modular subcommands are available from the official plugin repository.

Technology Stack:

  • Language: TypeScript (Node.js ^22.11 || ^24 || >=26)
  • Package Manager: pnpm with workspaces
  • Monorepo Runner: Turbo
  • Testing: Vitest
  • Linting: oxlint with oxfmt
  • Release: Changesets v3 (independent semver per package)

Quick Start

Scaffold a Discord application with pnpm create @wolfstar/http-framework

Run it with pnpm dev: the Stars CLI dashboard rebuilds and restarts the bot on every change

Prerequisites

  • Node.js ^22.11, ^24, or >=26
  • pnpm (automatically pinned via corepack)

Installation

# Clone the repository
git clone https://github.com/wolfstar-project/stars-components.git
cd stars-components

# Install dependencies (uses pnpm workspaces)
pnpm install

# Run quality gates
pnpm lint      # oxlint + oxfmt check
pnpm build     # tsdown for each package
pnpm typecheck # TypeScript check (uses built declarations)
pnpm test      # vitest

Important: Run pnpm build before pnpm typecheck, as typecheck resolves cross-package imports against built dist/*.d.ts files.

Using a Package

Each package is independently published to npm under @wolfstar/ scope. Install any package directly:

# Example: Install the HTTP framework and environment utilities
npm install @wolfstar/http-framework @wolfstar/env-utilities
# or with pnpm
pnpm add @wolfstar/http-framework @wolfstar/env-utilities

Packages

Package Description Version
Core Framework
@wolfstar/http-framework The primary framework for Star Network's HTTP-only Discord bots version
Framework Extensions
@wolfstar/http-framework-test-utils Test utilities and helpers for @wolfstar/http-framework version
Shared HTTP Services
@wolfstar/shared-http-pieces Common pieces and utilities for Star Network's HTTP-only bots version
@wolfstar/shared-influx-pieces InfluxDB integration pieces for Star Network's HTTP bots version
Internationalization (i18n)
@wolfstar/i18next-backend Fast filesystem-based i18next backend for Node.js version
@wolfstar/i18next-type-generator CLI utility to generate TypeScript augmentations for i18next version
Utilities & Helpers
@wolfstar/env-utilities Functional utilities for reading and parsing environment variables version
@wolfstar/influx-utilities Opinionated abstraction layer for InfluxDB single-organization access version
@wolfstar/safe-fetch Fetch wrapper implementing Rust-style Result types for error handling version
@wolfstar/start-banner CLI banner generator utility for startup messages version
Third-Party Integrations
@wolfstar/reddit-helpers Reddit helper functions for Star Network bots version
@wolfstar/twitch-helpers Twitch helper functions for Star Network bots version
@wolfstar/weather-helpers Weather API helper functions for Star Network bots version
Project Scaffolding
@wolfstar/cli The stars CLI: typed stars.config.ts, dev with TUI, build, info and codegen for http-framework projects version
@wolfstar/schema Typed stars.config.* schema and loader shared by @wolfstar/http-framework and @wolfstar/cli version
@wolfstar/vite-server Vite build and watch integration
@wolfstar/nitro-server Nitro server build integration
@wolfstar/create-http-framework CLI scaffolding tool to create new HTTP Framework bot projects version
Tooling
@wolfstar/oxlint-config Shareable oxlint base configuration version
@wolfstar/oxfmt-config Shareable oxfmt base configuration version
@wolfstar/eslint-config Shareable ESLint flat configuration, for consumers who use ESLint instead of oxlint version
@wolfstar/prettier-config Shareable Prettier configuration, for consumers who use Prettier instead of oxfmt version
@wolfstar/eslint-plugin-http-framework Custom lint rules for @wolfstar/http-framework and the @wolfstar/plugin-* ecosystem, for ESLint and oxlint version

Examples

The examples/ directory contains runnable bot samples using the HTTP Framework and related utilities. Examples are provided in both TypeScript and JavaScript (ESM).

Running an Example

# Install all dependencies
pnpm install

# Build all packages
pnpm build

# Setup environment for the basic example
cp examples/basic/.env.example examples/basic/src/.env

# Run a TypeScript example (with live reloading)
pnpm --filter basic dev

# Or run a plain JavaScript example (no build step)
pnpm --filter basic-js dev

For a complete list of available examples, see examples/README.md.


Development

Contributing

Contributions are welcome! Please read our Contributing Guide before submitting a pull request.

Key Conventions:

  • Commits: Conventional Commits using cz (commitizen)
  • Changes: Use pnpm changeset to add changesets; do not edit package.json#version or CHANGELOG.md directly (these are managed by Changesets)
  • Release Process: Changesets automatically publishes independent versions for affected packages

Benchmarks

Performance-sensitive code paths are benchmarked in benchmarks/ with tinybench and tracked continuously by CodSpeed. Run them locally with pnpm bench.

Contributors

Thank you to all contributors who have helped make Stars Components better!

Contributors

Development Environment

You can contribute without a local setup by using cloud-based development environments:

Open in VS Code Open in GitHub Codespaces Open in StackBlitz Open in Gitpod


License

Stars Components is licensed under the Apache License 2.0. See the LICENSE file for details.

Copyright 2022 Wolfstar Project


Resources

About

HTTP-first TypeScript framework and toolkit for building Discord applications.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages