Skip to main content

pypi docs license

Soar

Soar (Snakes on a Robot) is a Python framework for simulating and interacting with robots.

The software is designed to be the following:

  • painless: Using Soar for its intended purpose should be trivial. A student using Soar as part of an intro robotics course should, in the ideal case, have to look at Getting Started and nothing else.

  • extensible: Soar can support nearly any type of robot and any type of connection, so long as the user provides a suitable interface. Connect to robot’s over a serial port, WiFi, Bluetooth, etc–Soar is interface-agnostic. Though Soar provides basic physics for 2D collision detection and movement, the physics of simulated worlds and objects can be completely overidden.

  • simulation-driven: The most typical use case of Soar will be to run some stepwise simulation on a certain robot type, with some brain controlling it. It is not primarily designed for persistent robots that are always on or for situations where stepwise interaction is not suitable.

  • multiplatform: Soar uses no platform specific features, and uses Python’s standard GUI package, Tkinter, for its GUI. Soar should thus work on any platform with a standard Python interpreter of version 3.5 or later. Soar has been tested on Fedora 25 GNU/Linux, and Windows 8. If an issue arises running Soar on your platform, open an issue on GitHub.

  • open source: Soar is licensed under the LGPLv3, and may be used as a library by projects with other licenses.

To get started using Soar, see the Getting Started or the documentation.

Installation

Installing Soar is (hopefully) painless and primarily done 3 ways, ordered by decreasing ease:

From PyPI

Soar can be installed from the Python Package Index (PyPI) by running pip install soar.

This will install the latest stable (not development) release.

From Releases

An arbitrary stable (not development) Soar release can be installed from the github releases, by downloading the .zip archive and running pip install <path-to-zip>.

From latest source

Clone or download the git repo, navigate to the directory, then run:

python3 setup.py sdist
cd dist
pip install Soar-<version>.tar.gz

Development

Only stable releases of Soar will be published to PyPI or the github releases. Development versions will exist only in the GitHub repo itself, and will be marked with a .dev<N> suffix.

Typical versioning will look like the following: <MAJOR>.<MINOR>.<PATCH>. Major releases break backward compatibility, minor releases add functionality but maintain backward compatibility, and patch releases address bugs or fix small things.

If you have a specific feature you’d like to see in Soar, or a specific robot type you’d like bundled with the base software, or just want to contribute, consider opening a pull request.

Building Documentation

Building a local copy of the docs will require Sphinx.

Navigate to the docs/ directory and run sphinx-build -b html source/ <BUILD_DIR>.

Metadata

Release files for Soar 1.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Soar 1.5.2
File Size Uploaded
Soar-1.5.2.tar.gz 61.3 kB Details

Release files / Soar-1.5.2.tar.gz

Download URL Soar-1.5.2.tar.gz
Size 61.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5fabc62f807c8c8686b0ceb0dd4d3841731e3348f3fdbb999af79641900f5149
BLAKE2b-256 checksum
How to use checksums
7715acc988f04747d65147df81c6d62716d173d1b1c7f00f379f3a639318a396
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/3.6

Release history Release notifications | RSS feed

This release

1.5.2 This release

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.1

1 release file

1.4.0

1 release file

1.3.9

1 release file

1.3.8

1 release file

1.3.7

1 release file

1.3.6

1 release file

1.3.5

1 release file

1.3.4

1 release file

1.3.3

1 release file

1.3.2

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page