SkillAgentSearch skills...

Brainflow

BrainFlow is a library intended to obtain, parse and analyze EEG, EMG, ECG and other kinds of data from biosensors

Install / Use

/learn @brainflow-dev/Brainflow

README

<p align="center"> <img width="400" height="160" src="https://live.staticflickr.com/65535/49908747533_f359f83610_w.jpg"> <br> <a href="https://github.com/brainflow-dev/brainflow/releases"> <img alt="GitHub all releases" src="https://img.shields.io/github/downloads/brainflow-dev/brainflow/total?color=yellow&label=Downloads%28Github%29"> </a> <a href="https://pypi.org/project/brainflow/"> <img alt="PYPI" src="https://static.pepy.tech/personalized-badge/brainflow?period=total&units=international_system&left_color=grey&right_color=yellow&left_text=Downloads(PYPI)"> </a> <a href="https://www.nuget.org/packages/brainflow/"> <img alt="Nuget" src="https://img.shields.io/nuget/dt/brainflow?color=yellow&label=Downloads%28Nuget%29&logo=BrainFlow"> </a> </p>

BrainFlow is a library intended to obtain, parse and analyze EEG, EMG, ECG, and other kinds of data from biosensors.

It provides a uniform SDK to work with biosensors with a primary focus on neurointerfaces, all features available for free and distributed under MIT license.

Advantages of BrainFlow:

  • powerful API with many features to simplify development
    • Straightforward API for data acquisition
    • Powerful API for signal filtering, denoising, downsampling...
    • Development tools like Synthetic board, Streaming board, logging API
  • easy to use
    • BrainFlow has many bindings, you can choose programming language you like
    • All programming languages provide the same API, so it's simple to switch
    • API is uniform for all boards, it makes applications on top of BrainFlow almost board agnostic
  • easy to support and extend
    • Code to read data and to perform signal processing is implemented only once in C/C++, bindings just call C/C++ methods
    • Powerful CI/CD system which runs integrations tests for each commit automatically using BrainFlow's Emulator
    • Simplified process to add new boards and methods

Resources

Contribution guidelines

If you want to contribute to BrainFlow, be sure to review the contribution guidelines. This project adheres to BrainFlow's code of conduct. By participating, you are expected to uphold this code.

We use GitHub issues for tracking requests and bugs, please use BrainFlow's slack for general discussions.

The BrainFlow project strives to abide by generally accepted best practices in open-source software development.

Build Status

| Build Type | Status | |:---------------------------: |:-------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | Windows Tests | Run Windows | | Unix(Linux and MacOS) Tests | Run Unix | | Android Tests | Run Android NDK | | Alpine Tests | Run Alpine | | Valgrind Tests | Run Valgrind | | CppCheck | CppCheck | | Clang-Format | Clang Format |

Brainflow Bindings

We support bindings for:

Partners and Sponsors

OpenBCI

License:

MIT

View on GitHub
GitHub Stars1.6k
CategoryDevelopment
Updated2h ago
Forks385

Languages

C++

Security Score

85/100

Audited on Mar 21, 2026

No findings