Auxid
The Orthodox C++ Platform.
Install / Use
/learn @I-A-S/AuxidREADME
The Vision
Auxid is a platform for building modern, high-performance C++ applications using the principles of Orthodox C++ and Data-Oriented Design (DOD).
Modern C++ has become bogged down by massive template metaprogramming, glacial compile times, and a Standard Library (STL) whose node-based containers and rigid allocator model actively fight against CPU caches and Data-Oriented Design. Auxid strips the language back to its highly-performant, close-to-metal roots.
LibAuxid completely replaces the C++ Standard Library. It compiles in a purely freestanding environment (-nostdlib++, -ffreestanding, -fno-exceptions) and provides a hyper-lean, DOD-friendly template library built around explicit heap and arena memory allocators.
Core Features
-
Zero STL Overhead: No
<iostream>, no<vector>, no hidden allocations. -
World-Class Allocators: Integrated rpmalloc for lightning-fast, thread-caching heap allocations, alongside custom Arena allocators.
-
Cache-Friendly Containers: Custom Sparse-Dense HashMap, Small-String Optimized (SSO) String, and strictly aligned VecT implementations.
-
Safe Error Handling: Union-based Result<T, E> and Option<T> types that compile down to trivial registers, with Rust-like AU_TRY macros.
-
Strictly Clang: Built exclusively for Clang (Linux/macOS) and Clang-CL (Windows) to guarantee predictable ABIs and optimal code generation.
The Ecosystem
The Auxid platform is split across multiple repositories for modularity and maintenance. This repository is the home of LibAuxid (the core template library).
| Name | Description | Repo | |-----------------|----------------------------------------|------------------------------------------| | LibAuxid | Auxid custom template library and core platform | https://github.com/I-A-S/Auxid | | Validator | Clang-based static analysis and validator tool | https://github.com/I-A-S/Auxid-Validator | | VSCode | Official VSCode Extension for Auxid integration | https://github.com/I-A-S/Auxid-VSCode | | CLI | Command Line Utility for project management | https://github.com/I-A-S/Auxid-CLI | | Project Template | Easy to use production-ready template for scaffolding new Auxid projects | https://github.com/I-A-S/Auxid-Project-Template |
Quick Start (CMake Integration)
Auxid is designed to be highly adaptable. You can drop LibAuxid into any existing CMake pipeline using FetchContent.
[!NOTE] Opt-In Platform Configurations
To remain unobtrusive to standard developer workflows, Auxid does not force strict compiler or linker flags by default. However, to help you write predictable "Orthodox C++", we provide two levels of opt-in configurations that you can explicitly link your targets against:
auxid_platform_standard(Recommended): Disables C++ exceptions (-fno-exceptionsor/EHs-c-). We highly recommend linking this for all projects using Auxid to ensure predictable control flow and performance.auxid_platform_close_to_metal: Inherits the standard flags, but additionally disables the standard library (-nostdlib++) and marks the environment as freestanding for absolute maximum control.
[!WARNING] STL Access is Disabled (When using
auxid_platform_close_to_metal)If you opt-in to link against
auxid_platform_close_to_metal, Auxid configures your target for close-to-metal execution, which completely removes access to the C++ Standard Template Library (STL). Consequently, your project and any external dependencies cannot rely on STL features.
- Existing Projects: We strongly advise against linking
auxid_platform_close_to_metalin established codebases. If your project or its external libraries depend on the STL, this will break your build.- New Projects: We highly recommend this target for new, resource-constrained projects where maximum CPU and memory efficiency are critical, provided you can comfortably build without STL dependencies. (You still get access to the Auxid Template Library, which includes
vector,string, and other common containers.)
cmake_minimum_required(VERSION 3.20)
project(MyOrthodoxEngine CXX)
include(FetchContent)
FetchContent_Declare(
auxid
GIT_REPOSITORY [https://github.com/I-A-S/Auxid.git](https://github.com/I-A-S/Auxid.git)
GIT_TAG main # Use a specific release tag instead for best stability
)
FetchContent_MakeAvailable(auxid)
auxid_setup_project() # (OPTIONAL) Sets up cmake project settings
add_executable(my_app main.cpp)
# Link the core library
target_link_libraries(my_app PRIVATE libauxid)
# (Recommended) Opt-in to the standard Orthodox C++ configuration
target_link_libraries(my_app PRIVATE auxid_platform_standard)
# OR: Opt-in to the bare-metal configuration (Disables STL)
# target_link_libraries(my_app PRIVATE auxid_platform_close_to_metal)
Example Usage
#include <auxid/containers/vec.hpp>
#include <auxid/containers/string.hpp>
using namespace au;
auto main() -> int
{
Vec<String> names;
names.push_back(String("Orthodox"));
names.push_back(String("C++"));
return 0;
}
License
Copyright (C) 2026 IAS. Licensed under the Apache License, Version 2.0.
Related Skills
node-connect
345.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
104.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
345.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
345.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
