Skip to content
Ability

DocsInstallation Instructions

Installation Instructions

Install a prebuilt package when you can. Compile the core only when you need a custom build or a language binding that is not on an index yet.

Precompiled libraries in package managers(Nuget, PYPI, etc)

Wheels, NuGet packages, and language indexes ship a precompiled core. Prefer these unless you are changing native code.

Python

Install from PyPI. The import is ability. Optional extras add plotting helpers.

python -m pip install ability

C#

C# uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

dotnet add package Ability

R

R uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

install.packages("ability")

Java

Java uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

implementation 'dev.ability:ability:1.0.0'

Matlab

Matlab uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

addpath('ability_matlab')

Julia

Julia uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

using Pkg; Pkg.add("Ability")

Typescript

Typescript uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

npm install ability

Rust

Rust uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

cargo add ability

Swift

Swift uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

.package(url: "https://github.com/pareeknikhil/emg-ability", from: "1.0.0")

Docker Image

Docker Image uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

docker pull ability/ability:latest

Compilation of Core Module and C++ Binding

Clone the repo, then configure with CMake. The C++ binding builds with the core.

Windows

Windows uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

cmake -G Ninja -B build && cmake --build build

Linux

Linux uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

cmake -B build && cmake --build build -j

MacOS

MacOS uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

cmake -B build && cmake --build build

Android

Use a prebuilt AAR when you can. Compile with the NDK only when you are changing native code for Android.

Installation instructions

Installation instructions uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Compilation using Android NDK

Compilation using Android NDK uses the same Ability session flow: construct with a device id, prepare, start, read a block, then stop. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

cmake -DCMAKE_TOOLCHAIN_FILE=$NDK/build/cmake/android.toolchain.cmake -B build