Getting Started¶
Requirements¶
- C++26 capable compiler (project enables
CXX_STANDARD 26and uses compile-time reflection — Clang/GCC with-freflection, MSVC with/experimental:reflection) - CMake 3.28 or later
- simdjson (fetched automatically by
FetchContent) - Optional:
fmtlibrary for enhanced logging. Enable with-DSKIRNIR_USE_FMT=ONwhen configuring Skirnir as a subdirectory.
Building¶
git clone https://github.com/gilmar-sales/Skirnir.git
mkdir build && cd build
cmake ..
cmake --build .
Running Tests¶
Building the Examples¶
The top-level CMakeLists.txt enables tests and examples by default when Skirnir is the project root. When consuming Skirnir as a subdirectory the options default to OFF.
Basic Usage¶
- Create a
ServiceCollection - Register your services with desired lifetimes
- Build a
ServiceProvider - Request services via
GetService<T>()