GinsFSM, a library to develop systems based on finite-state machines. Includes full async HTTP/WSGI/WinSocket/SockJS servers.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
GinsFSM
This project is finalized.
I'm re-writing the idea of ginsfsm in C language.
The name of the new project is Yuneta Simplified.
Key Concepts
Can you draw your development?
Can you view the behavior of your application in real time?
With this framework, you can!
GinsFSM is a Python library for developing systems based on finite-state machines. This model is especially useful for building networking and communication applications.
- All objects, called gobjs, are instances of a class derived from
ginsfsm.gobj.GObj. - Each
GObjhas an internal simple-machine that defines its behavior. - Communication between
gobjshappens through events.
As a result, the system is fully asynchronous and event-driven.
All objects share a simple and consistent interface — just change the event name and the data payload.
Features
- Fully asynchronous HTTP server
- WSGI server
- WinSocket server/client compatible with
sockjs
You can run multiple WSGI applications simultaneously.
Project Scaffolding
GinsFSM includes a variety of scaffolds to help you generate new projects.
Similar to the Pyramid framework's pcreate / pserve commands,
GinsFSM provides gcreate / gserve commands for creating and running projects.
Using the gcreate command with the multi_pyramid_wsgi scaffold, you can generate a project with multiple WSGI applications —
one of which can be a Pyramid WSGI application.
GObj objects are Pyramid "location-aware" resources, and the object model is a hierarchical tree —
making traversal dispatching a natural fit.
Support and Documentation
License
Copyright (c) 2012, Ginés Martínez Sánchez.
GinsFSM is released under the terms of the MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ginsfsm-0.7.3.tar.gz.
File metadata
- Download URL: ginsfsm-0.7.3.tar.gz
- Upload date:
- Size: 4.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.22.2 CPython/3.12.2 Linux/6.8.0-57-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
516574992c2fe03339fd0a59e0081ce762046dee833be20970e2a55090717392
|
|
| MD5 |
6fcd17ae4b304a61194f02cfa105acd2
|
|
| BLAKE2b-256 |
fb8a52e3e580ac99dba0c2760097bddb46443cee4c1ebcaa962ec4fe8b1379c6
|
File details
Details for the file ginsfsm-0.7.3-py3-none-any.whl.
File metadata
- Download URL: ginsfsm-0.7.3-py3-none-any.whl
- Upload date:
- Size: 4.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.22.2 CPython/3.12.2 Linux/6.8.0-57-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60860186012493ba56871fcccc95355ac99f6fd99b53cb9282c50ba1f63cffca
|
|
| MD5 |
b14ad3529bf1e3506c71433e4f2173e8
|
|
| BLAKE2b-256 |
2abc6f2c89f30e8be54beea7d35587b12c6cfa9ba6e9213db2662e028d37ac94
|