Multi‑language event‑driven microservices framework with built‑in Zod validation and type‑safe events. Runs anywhere — from embedded devices and routers to clustered servers. Pluggable architecture, secure‑by‑default, production‑ready.
  • TypeScript 48.9%
  • C# 11.5%
  • Go 9.9%
  • JavaScript 9.1%
  • Rust 8.5%
  • Other 12.1%
Find a file
Mitchell R 614d55ded7
Some checks failed
Build / Native languages and Vault integration (push) Has been cancelled
Build / Node.js workspaces (push) Has been cancelled
Build / Node.js Windows runtime (push) Has been cancelled
Build / Python (push) Has been cancelled
Build / Go (push) Has been cancelled
Build / .NET (push) Has been cancelled
Build / Rust (push) Has been cancelled
CodeQL / Analyze csharp (push) Has been cancelled
CodeQL / Analyze go (push) Has been cancelled
CodeQL / Analyze javascript-typescript (push) Has been cancelled
CodeQL / Analyze python (push) Has been cancelled
Build / Rust Docker image (push) Has been cancelled
Build / Node.js Docker image (push) Has been cancelled
Build / Node.js Vault Docker image (push) Has been cancelled
Build / Go Docker image (push) Has been cancelled
Build / Python Docker image (push) Has been cancelled
Build / .NET Docker image (push) Has been cancelled
Merge pull request #115 from BetterCorp/dependabot/npm_and_yarn/master/typescript-7.0.2
chore(deps-dev): bump typescript from 6.0.3 to 7.0.2
2026-09-12 23:07:06 +02:00
.github refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
docker fix: add deploy healthchecks 2026-06-23 11:33:29 +02:00
docs fix: complete native Vault publishing 2026-09-09 09:38:22 +02:00
dotnet Bump AnyVali from 1.1.5 to 1.1.6 2026-09-11 03:49:03 +00:00
go fix: complete native Vault publishing 2026-09-09 09:38:22 +02:00
nodejs test: support TypeScript 7 in generated schema regression 2026-09-12 20:57:40 +00:00
plugins Merge branch 'master' into dependabot/npm_and_yarn/master/typescript-7.0.2 2026-09-12 22:54:00 +02:00
python fix: complete native Vault publishing 2026-09-09 09:38:22 +02:00
rust fix: complete native Vault publishing 2026-09-09 09:38:22 +02:00
scripts refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
tests Merge branch 'master' into dependabot/npm_and_yarn/master/typescript-7.0.2 2026-09-12 22:54:00 +02:00
.coderabbit.yaml fix(deps): remove flagged coverage package 2026-06-20 23:42:21 +02:00
.dockerignore refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
.gitignore refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
Cargo.lock chore: update AnyVali to 1.1.5 2026-09-09 02:42:08 +02:00
Cargo.toml refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
CHANGELOG Add CHANGELOG 2020-09-22 20:18:13 +00:00
CONTRIBUTING.md Add CONTRIBUTING 2020-09-22 20:18:39 +00:00
Dockerfile.types fix: add deploy healthchecks 2026-06-23 11:33:29 +02:00
go.mod fix: resolve reviews and update AnyVali 2026-09-07 23:44:58 +02:00
go.sum fix: resolve reviews and update AnyVali 2026-09-07 23:44:58 +02:00
LICENSE chore: add root LICENSE (AGPL-3.0), remove LICENSE.commercial 2026-05-27 22:34:00 +02:00
llms.txt fix(security): update vulnerable deps 2026-06-14 20:32:52 +02:00
package-lock.json Merge branch 'master' into dependabot/npm_and_yarn/master/typescript-7.0.2 2026-09-12 22:54:00 +02:00
package.json fix: address runtime review regressions 2026-09-05 03:32:41 +02:00
README.md refactor: separate native plugins from frameworks 2026-09-07 20:54:55 +02:00
repomix.sh refactor: remove deprecated code and improve documentation 2025-12-03 10:28:30 +02:00
SECURITY.md Create SECURITY.md 2022-04-28 19:29:38 +02:00
version.txt Updated docs 2025-08-08 15:47:52 +02:00

About

BSB (Better-Service-Base) is an event-driven microservices framework for Node.js and TypeScript with built-in cross-language schema validation (AnyVali / BSBType), type-safe events, and a pluggable architecture for config, logging, metrics, and events.
It is production-ready and secure-by-default for validated APIs and distributed services, and can run as a single node or a geo-scaled cluster.
Simplicity, flexibility, and expandability are core design goals.
Node.js is the primary implementation. Native Go, Python, .NET, and Rust hosts run application plugins and generate clients from shared contracts. Registry, Vault, and syslog servers remain shared Node services. Each native guide documents packaging, runtime options, and remaining SDK limitations.

See repository layout and build outputs for framework/plugin separation, generated clients, SDK references and deployable artifacts.

Intro 1
#Sales pitch

Source/Github

GitHub GitHub Repo stars GitHub issues GitHub pull requests
GitHub commit activity (branch) GitHub last commit (branch)
GitHub Workflow Status Build and Publish (EA) Build and Publish (RC) FOSSA Status FOSSA Status

Container/Docker

GitHub Docker Image Size Docker Pulls Docker Image Version (latest semver)

NodeJS

GitHub codecov node-current (scoped) npm npm bundle size (scoped) npm (scoped)

- Plugins

NodeJS Plugins Service Plugins Config Plugins Events Plugins Logging Plugins

Sponsors

Static Badge Static Badge

Documentation/Usage

See Getting Started for more details

Workspace Notes

  • Root package-lock.json is single source of truth for workspace installs.
  • Workspace packages must not keep their own package-lock.json.
  • Run installs from repo root only:
    npm install
    npm run ws:check-lockfiles
    
  • docs/ is workspace package and follows @bsb/base version.
  • When bumping BSB version:
    npm run ws:version -- 9.1.11
    npm install
    
  • When only syncing docs version and plugin @bsb/base ranges to current base:
    npm run ws:sync-versions
    npm install
    

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Alternatively, you may obtain a commercial license for this program. The commercial license allows you to use the Program in a closed-source manner, including the right to create derivative works that are not subject to the terms of the AGPL.

To obtain a commercial license, please contact the copyright holders at https://www.bettercorp.dev. The terms and conditions of the commercial license will be provided upon request.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.