Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

StormByte Suite

Focused C++26 libraries and the tools that keep them buildable on Linux, Windows, and macOS.

The public surface is intentionally small. Each module does one job. Third-party types stay private. Text and binary data that cross a DLL / .so boundary use suite types, not std::string by value.

Docs: dev.stormbyte.org
Author: David C. Manuelda · Sponsor

Libraries

Repository Role
StormByte Foundation every other module links: platform, Expected, exceptions, Error/Fault, little-endian serialization, CString / WCString, BinaryData, Size / ByteSize, UUID v4, bitmasks, clonable types, ThreadLock, concepts
StormByte-String DLL-safe UTF-8 / wide text on top of Base: views, conversions and helpers without crossing std::string across a shared-library boundary
StormByte-System Processes with pipes, chaining, device classification, host info, thread name, environment expansion. POSIX and Windows, one API
StormByte-Buffer FIFO, SharedFIFO, Ring, Producer/Consumer, Hopper, Sink, Bridge, Pumper, pipelines and buffered I/O
StormByte-Config Human-readable text and versioned binary configuration documents: values, comments, groups, lists, Save / Load
StormByte-Logger Streaming logger: levels, headers, hierarchical components, Scope, ThreadedLog, redaction, hex dumps
StormByte-Crypto Hash, compress, encrypt, sign and key agreement. Crypto++ stays private; installed headers never mention CryptoPP::
StormByte-Database One API over SQLite, PostgreSQL and MariaDB. Inherit the backend; build the schema on top
StormByte-Network Inherit Client or Server. Framed packets, Buffer pipelines, IPv4/IPv6. POSIX and Winsock stay private
StormByte-Multimedia Decode, encode and containers without raw FFmpeg types; codecs enabled only if present

Headers live under StormByte/…. Namespace root is StormByte. Shared vs static follows CMake BUILD_SHARED_LIBS.

Needs a C++26 compiler and CMake 3.28 or newer.

git clone https://github.com/StormByte-Suite/StormByte.git
cd StormByte
cmake -S . -B build
cmake --build build

Each module’s README lists its exact dependencies and pins. Do not treat the suite as a single mega-repo: Base does not implement Buffer, Crypto, Network, or the rest.

Tools

Repository Role
StormByte-BuildMaster Short CMake DSL for vendoring CMake and Meson projects. Declare components and edges in any order; BuildMaster materializes stages, IMPORTED targets and the usual third-party graph without the spaghetti

Design

  • Split on purpose. Link only what you use.
  • Inherit, do not wrap vendor types in public headers.
  • Failures are typed (Expected, Fault) with stable domains (StormByte.…).
  • Cross-platform: Linux, Windows, macOS.
  • Original sources: LGPL v3 or later, or a commercial license from the copyright holder (see each repo’s LICENSE). StormByte-BuildMaster may use a different license — check that repo.

Support

Issues and PRs on the module they belong to.
Sponsorship: github.com/sponsors/StormBytePP

About

StormByte Organization

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors