Skip to main content

No project description provided

Project description

PyFSA

Build status badge Release status badge PyPI version badge PyPI Status Badge

Python versions badge License Downloads per month

A python CLI to render finite state graphs.

This application takes a CSV file with state information, and uses it to either produce the finite state graph, and verify that strings are valid given the state information, a start state, and a desired state. The string subcommand is also able to render the traversal graph of a string through the state machine.

Installation

You can install this project directly from github with pip, but it is also available in pypi. Install it like so:

python3 -m pip install pyfsa

GraphViz is required to run this, as graphviz is the rendering engine used to create the png files. You can find lots of information on how to do that here: https://graphviz.org/download/

You might need to also install the library that it provides. For example, on ubuntu, you also need to run the following command to ensure that pygraphviz runs properly. You can find more information on installing that package on their website

$ apt install libgraphviz-dev

Examples

State file:

trigger,source,target
a,x,y
b,x,z
a,y,x
b,y,z
a,z,z
b,z,z
fsa state -f examples/states.csv

no_start_end

fsa state -f examples/states.csv -s x

start_state

fsa state -f examples/states.csv -e z

end_state

fsa state -f examples/states.csv -s x -e z

both

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

pyfsa-0.3.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

pyfsa-0.3-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file pyfsa-0.3.tar.gz.

File metadata

  • Download URL: pyfsa-0.3.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for pyfsa-0.3.tar.gz
Algorithm Hash digest
SHA256 feb78b440c68d851e9d5952765071dd555d3bc40ea4d352c24b12fc3fc488c0f
MD5 fe3cca3199589e298fea462ce1564efb
BLAKE2b-256 4ac1da072846ba6286441f1bfe50acf0c05e535b21d81e6d8013050542e24a0f

See more details on using hashes here.

File details

Details for the file pyfsa-0.3-py3-none-any.whl.

File metadata

  • Download URL: pyfsa-0.3-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for pyfsa-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 aeceb47734f9e0b981054ac6f76e368db6e5acb8f3192b9c0db60f56c0514727
MD5 898ff1a9724a4a4e1744a21d4631c3a9
BLAKE2b-256 72fbe20ffe32a625db2094f6cfedcbf74d2d6ad8d49e8de879c6a46c9bae660a

See more details on using hashes here.

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