Skip to main content

A hierarchical finite state machine library

Project description

Copyright (c) 2009 Joseph Lisee All rights reserved.

License information

The OSI BSD License is used. Please See the file “LICENSE” for information on the history of this software, terms & conditions for usage, and a DISCLAIMER OF ALL WARRANTIES.

Quick Install

Run “python install” to install to the directory or “python install –prefix=<install_directory>” for the directory of your choice.

What is StatePy anyways?

StatePy is an event driven hierarchical finite state machine library that lets you easily design, build, and analyze state machines. It represents individuals states as classes, and by default uses static transition tables. The tables are simple python dicts maping events, which can be any hashable type, to the next state. Member functions of the state classes are called upon entering, upon exiting, and on every transition. To learn more check out the documentation.


See the docs folder for examples of StatePy’s features.

Web site

Check out for the latest releases and news.

Bug reports

To report or search for a bug please use the BitBucket based bug tracker at:


StatePy comes with a relatively complete, ~95% line coverage, set of unit tests which can be run with the simple command “python test”. If you have installed StatePy already you can use the function “statepy.test.runTests()” to run the tests at any time you desire. If you submit a feature/patch, you should include a tests for it as well.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

StatePy-0.3.0.tar.gz (18.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page