Skip to main content

Quickstart

Choose the SDK that matches your workflow. The Python SDK leads with wrapPersonalizerBrainState (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.
Using a frozen neural encoder (EEGNet, BrainDecode, REVE, …)? Start with Personalizer & Middleware instead of the classical classifier path.

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.
Nimbus focuses on Bayesian personalization and BCI workflow tooling. Filtering, artifact removal, epoching, and feature extraction (or a frozen trunk) happen before data reaches the head.

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

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.
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.
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.