/opensourceleg

An open-source SDK for developing and testing algorithms on commonly used robotic hardware.

Primary LanguagePythonGNU Lesser General Public License v2.1LGPL-2.1

opensourceleg

Build status Documentation Status Python Version Dependencies Status

Code style: black Security: bandit Pre-commit License Coverage Report

An open-source software library for numerical computation, data acquisition,
and control of lower-limb robotic prostheses.

NOTE: We are currently testing the new version of the library (main branch), and the PyPI release will be updated soon. If you are looking for the source behind the existing PyPI release, please refer to the legacy branch.


Installation

The easiest and quickest way to install the opensourceleg library is via pip:

pip install opensourceleg

You can now use the library in your projects! Please refer to the documentation for tutorials, examples, and more.

Developing and Contributing to the Library

If you'd like to modify or contribute to the opensourceleg library, we recommend following these steps:

  1. Fork the repository by clicking the "Fork" button at the top right of this page.

  2. Clone your fork to your local machine:

    git clone https://github.com/YOUR-USERNAME/opensourceleg.git
    cd opensourceleg
  3. Set up the upstream remote to keep your fork in sync with the main repository:

    git remote add upstream https://github.com/neurobionics/opensourceleg.git
  4. Install Poetry if you haven't already. Poetry is a python packaging and dependency management tool. We use poetry to manage dependencies and build the library.

  5. Install dependencies and activate the virtual environment:

    poetry install
    poetry shell
  6. Install pre-commit hooks:

    make install
  7. Create a new branch for your feature or bugfix:

    git checkout -b feature-or-bugfix-name
  8. Make your changes and commit them with descriptive messages.

  9. Run checks. See the contributing guidelines for more information.

  10. Push your changes to your fork:

git push origin feature-or-bugfix-name
  1. Create a Pull Request by navigating to your fork on GitHub and clicking New Pull Request.

Your changes will be reviewed by the maintainers, and if approved, they will be merged into the main repository.

License

The opensourceleg library is licensed under the terms of the LGPL-v2.1 license. This license grants users a number of freedoms:

  • You are free to use the opensourceleg library for any purpose.
  • You are free to modify the opensourceleg library to suit your needs.
  • You can study how the opensourceleg library works and change it.
  • You can distribute modified versions of the opensourceleg library.

The GPL license ensures that all these freedoms are protected, now and in the future, requiring everyone to share their modifications when they also share the library in public.

Contributing

Contributions are welcome, and they are greatly appreciated! For more details, read our contribution guidelines.