encode(X) → Z, adapt online with a Bayesian head (Personalizer), and ship apps on BrainState. Classical CSP / bandpower / Riemann → NimbusLDA workflows remain fully supported.

Start Here
Personalizer & Middleware
Encoder contract:
wrap → Personalizer → BrainState.Python SDK
Local Personalizer workflows with
nimbus-bci.Julia SDK
RxInfer-backed workflows with
NimbusSDK.jl.Why Nimbus
Why Bayesian BCI Inference
Compare classical LDA, SVM, and deep learning with Nimbus — including ~10× faster online updates.
Probabilistic Outputs
Predictions include posterior probabilities and confidence scores.
Real-Time Inference
Batch and streaming workflows for low-latency BCI systems.
Heads / Models
Bayesian heads used by Personalizer and standalone classifiers.
Production Guardrails
Validation, quality gates, diagnostics, and deployment patterns.
Heads (used by Personalizer)
Core Workflow
Product path (frozen trunk):Documentation Map
Personalizer & Middleware
Encoder contract and BrainState app surface.
Installation And Quickstarts
Choose Python or Julia and run first inference.
Heads & Models
LDA, QDA, Softmax, Probit, STS as Personalizer heads.
Examples
Compact recipes and higher-level application patterns.
Common Questions
Do I need an API key?
Do I need an API key?
Python does not require an API key. Julia requires an API key to install and use the commercial core.
Can Nimbus process raw EEG?
Can Nimbus process raw EEG?
No. Nimbus expects embeddings from a frozen encoder (
encode(X) → Z) or features from preprocessing pipelines such as CSP, bandpower, or ERP extraction.Which SDK should I start with?
Which SDK should I start with?
Use Python for Personalizer / BrainState app integration, sklearn/MNE workflows, and local development. Use Julia for RxInfer-backed workflows and Julia-native model tooling.