Quickstart
Choose the SDK that matches your workflow. The Python SDK leads withwrap → Personalizer → BrainState (classical heads remain available). The Julia SDK uses NimbusSDK.jl and requires an API key for the commercial core.
Python SDK Quickstart
Install
nimbus-bci, fit a Personalizer (or classical head), and try streaming / active learning.Julia SDK Quickstart
Install NimbusSDK.jl, authenticate with an API key, and run your first Julia inference workflow.
Before You Start
- Use Python 3.11+ for the Python SDK or Julia 1.9+ for the Julia SDK.
- Provide embeddings (
encode(X) → Z) or preprocessed EEG features, not raw EEG. - Start with Personalizer & Middleware for the encoder contract, or Preprocessing Requirements for CSP / bandpower / ERP features.
Common Next Steps
Personalizer & Middleware
Encoder contract, BrainState, and decision presets.
Model Selection
Compare NimbusLDA, NimbusQDA, NimbusSoftmax, NimbusProbit, and NimbusSTS heads.
Feature Normalization
Normalize features consistently across sessions.
Streaming Inference
Configure chunk-by-chunk low-latency inference.
FAQ
Do I need an API key for both SDKs?
Do I need an API key for both SDKs?
No. The Python SDK (
nimbus-bci) runs locally and does not require an API key. The Julia SDK (NimbusSDK.jl) requires an API key to install and use NimbusSDKCore.Which quickstart should I choose?
Which quickstart should I choose?
Choose Python for Personalizer / BrainState app integration, sklearn/MNE, and local installation. Choose Julia for the NimbusSDK.jl workflow, RxInfer-backed models, or Julia model registry tooling.
What data format does Nimbus expect?
What data format does Nimbus expect?
Embeddings or extracted features — not raw EEG. Personalizer expects
(n_trials, n_features) after encode (or with encoder=None). Classical classifier examples use the same shape. Julia batch data usually uses (n_features, n_samples, n_trials) inside BCIData.