GitHub topics: finite-state-machine
fgmacedo/python-statemachine
Python Finite State Machines made easy.
Language: Python - Size: 2.21 MB - Last synced at: about 9 hours ago - Pushed at: about 10 hours ago - Stars: 1,079 - Forks: 96

hoangsonww/Digital-Design-Labs
π₯οΈ A collection of SystemVerilog modules and Assembly programs. This repo includes examples of decoders, encoders, binary adders, and interactive games such as Guessing Game implemented in hardware description and assembly languages, illustrating practical applications in digital systems and microprocessor interfacing.
Language: Assembly - Size: 712 KB - Last synced at: about 11 hours ago - Pushed at: about 12 hours ago - Stars: 27 - Forks: 14

JuliaDynamics/ResumableFunctions.jl
C# style generators a.k.a. semi-coroutines for Julia.
Language: Julia - Size: 1.18 MB - Last synced at: about 20 hours ago - Pushed at: about 21 hours ago - Stars: 164 - Forks: 21

mdeloof/statig
Hierarchical state machines for designing event-driven systems
Language: Rust - Size: 374 KB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 679 - Forks: 29

HansBug/pyfcstm
A Python framework for parsing finite state machine DSL and generating executable code in multiple target languages.
Language: Python - Size: 13.5 MB - Last synced at: 2 days ago - Pushed at: 2 days ago - Stars: 0 - Forks: 1

nagendrajamadagni/Lexer
A customizable lexical analyser generator that also allows one to visualize the finite automata generated
Language: Rust - Size: 1.22 MB - Last synced at: 2 days ago - Pushed at: 2 days ago - Stars: 24 - Forks: 1

chief-of-state/chief-of-state
gRPC clustered event sourcing docker tool
Language: Scala - Size: 1.98 MB - Last synced at: 2 days ago - Pushed at: 2 days ago - Stars: 13 - Forks: 3

xiamx/gen_fst
Elixir module that implements a generic finite state transducer with customizable rules expressed in a DSL.
Language: Elixir - Size: 16.6 KB - Last synced at: 2 days ago - Pushed at: 2 days ago - Stars: 9 - Forks: 1

pjrebsch/finity
Finite state management with exhaustiveness and transition enforcement for TypeScript.
Language: TypeScript - Size: 68.4 KB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 0 - Forks: 0

endurodave/StateMachine
State Machine Design in C++
Language: C++ - Size: 74.2 KB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 156 - Forks: 43

Hayo87/automata-explorer
Visual comparison tool for automata
Language: Java - Size: 1.14 MB - Last synced at: 4 days ago - Pushed at: 4 days ago - Stars: 2 - Forks: 0

divvungiellatekno/giellalt.uit.no
Source for UiT specific documentation for the GiellaLT infrastructure.
Language: JavaScript - Size: 213 MB - Last synced at: 4 days ago - Pushed at: 4 days ago - Stars: 3 - Forks: 0

adel-mamin/amast
A Minimalist Asynchronous Toolkit (AMAST) is a small and efficient C99 library that helps manage complex, event-driven programs. It combines the Actor model with hierarchical state machines to make building real-time systems easier.
Language: C - Size: 1.58 MB - Last synced at: 4 days ago - Pushed at: 4 days ago - Stars: 16 - Forks: 1

BurntSushi/aho-corasick
A fast implementation of Aho-Corasick in Rust.
Language: Rust - Size: 4.71 MB - Last synced at: 4 days ago - Pushed at: 9 months ago - Stars: 1,114 - Forks: 101

jparisio/Game-Demo-project-S-
A short Game demo testing my skills and abilities in game development, as well as attempting to recreate unique features in some of my favourite games
Language: Game Maker Language - Size: 188 MB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 0 - Forks: 0

katef/libfsm
DFA regular expression library & friends
Language: C - Size: 7.32 MB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 964 - Forks: 56

nodejs/llparse
Generating parsers in LLVM IR
Language: TypeScript - Size: 821 KB - Last synced at: 3 days ago - Pushed at: about 2 months ago - Stars: 611 - Forks: 36

breandan/galoisenne
πΈοΈ Graphs, finite fields and discrete dynamical systems in Kotlin
Language: Kotlin - Size: 137 MB - Last synced at: 6 days ago - Pushed at: 6 days ago - Stars: 136 - Forks: 11

statelyai/xstate
Actor-based state management & orchestration for complex app logic.
Language: TypeScript - Size: 258 MB - Last synced at: 6 days ago - Pushed at: 7 days ago - Stars: 28,346 - Forks: 1,311

soveran/micromachine
Minimal Finite State Machine
Language: Ruby - Size: 44.9 KB - Last synced at: about 21 hours ago - Pushed at: almost 8 years ago - Stars: 525 - Forks: 40

leonardomso/awesome-fsm
π€ A curated list of awesome resources related to finite state machines and statecharts.
Language: JavaScript - Size: 192 KB - Last synced at: 4 days ago - Pushed at: 3 months ago - Stars: 404 - Forks: 24

RomanQed/jsm
A lightweight library that allows you to create fast finite state machine according to a given scheme.
Language: Java - Size: 154 KB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 1 - Forks: 0

yangboz/godpaper
:monkey_face: An AI chess-board-game framework(by many programming languages) implementations.
Language: HTML - Size: 65.1 MB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 48 - Forks: 18

LarsDevans/tweezy
Eindopdracht voor DP1 (Design Patterns 1) voor Avans Hogeschool
Language: Java - Size: 43.9 KB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 0 - Forks: 0

kwag1227/Autonomous-Rover-Project
Stores all files relating to my all-terrain, Perseverance-inspired mars rover.
Size: 5.76 MB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 0 - Forks: 0

flex-development/fsm-tokenizer
finite state machine tokenizer
Language: TypeScript - Size: 3.12 MB - Last synced at: 6 days ago - Pushed at: 8 days ago - Stars: 3 - Forks: 0

marco-ippolito/fiume
zero-dependency, lightweight finite state machine in Typescript
Language: JavaScript - Size: 818 KB - Last synced at: 5 days ago - Pushed at: 8 days ago - Stars: 74 - Forks: 6

ivanbgd/posix-shell-rust
A POSIX-Compliant Shell (CLI) Implementation in Rust
Language: Rust - Size: 107 KB - Last synced at: 8 days ago - Pushed at: 8 days ago - Stars: 0 - Forks: 0

llwyd/boilerplate
C boilerplate code for embedded systems.
Language: C - Size: 179 KB - Last synced at: 8 days ago - Pushed at: 8 days ago - Stars: 0 - Forks: 0

hemonserrat/IoT-uFSM
IoT u-Micro Finite State Machine
Language: C++ - Size: 397 KB - Last synced at: 9 days ago - Pushed at: 9 days ago - Stars: 0 - Forks: 0

endurodave/AsyncStateMachine
Asynchronous State Machine in C++
Language: C++ - Size: 524 KB - Last synced at: 10 days ago - Pushed at: 10 days ago - Stars: 1 - Forks: 0

pgularski/pysm
Versatile and flexible Python State Machine library
Language: Python - Size: 323 KB - Last synced at: 7 days ago - Pushed at: 11 months ago - Stars: 76 - Forks: 11

bredele/mood
:speak_no_evil: Give some mood to your code with a finite state machine
Language: JavaScript - Size: 102 KB - Last synced at: 9 days ago - Pushed at: over 5 years ago - Stars: 75 - Forks: 1

xorz57/fsm
Header-Only C++11 FSM Library
Language: C++ - Size: 10.7 KB - Last synced at: 11 days ago - Pushed at: 11 days ago - Stars: 0 - Forks: 0

Phuire-Research/Stratimux
Logical Asynchronous Graph Programming Framework
Language: TypeScript - Size: 30.8 MB - Last synced at: 13 days ago - Pushed at: 13 days ago - Stars: 6 - Forks: 0

daac-tools/daachorse
π A fast implementation of the Aho-Corasick algorithm using the compact double-array data structure in Rust.
Language: Rust - Size: 3.71 MB - Last synced at: 13 days ago - Pushed at: 13 days ago - Stars: 218 - Forks: 15

cryptocode/zigfsm
A finite state machine library for Zig
Language: Zig - Size: 82 KB - Last synced at: 6 days ago - Pushed at: 3 months ago - Stars: 159 - Forks: 6

metosin/tilakone
Minimalistic finite state machine (FSM) in Clojure
Language: Clojure - Size: 99.6 KB - Last synced at: 3 days ago - Pushed at: over 1 year ago - Stars: 198 - Forks: 20

am-kantox/finitomata
FSM implementation generated from Mermaid/PlantUML textual representation
Language: Elixir - Size: 1.06 MB - Last synced at: 14 days ago - Pushed at: 14 days ago - Stars: 116 - Forks: 10

Zakrok09/ts-automata
TS-AUtomata is an automata simulation utility package for FSMs, PDAs, TMs written for/in JS/TS.
Language: TypeScript - Size: 319 KB - Last synced at: 14 days ago - Pushed at: 14 days ago - Stars: 32 - Forks: 0

vortexntnu/vortex-auv
Software for guidance, navigation and control for the Vortex AUVs. Purpose built for competing in AUV/ROV competitions.
Language: C++ - Size: 172 MB - Last synced at: 5 days ago - Pushed at: 9 days ago - Stars: 99 - Forks: 22

viewflow/django-fsm π¦
Django friendly finite state machine support
Language: Python - Size: 361 KB - Last synced at: 9 days ago - Pushed at: about 1 year ago - Stars: 2,342 - Forks: 311

Sollimann/bonsai
Rust implementation of AI behavior trees.
Language: Rust - Size: 2.49 MB - Last synced at: 1 day ago - Pushed at: 4 months ago - Stars: 386 - Forks: 19

davidsbond/pgfsm
A Go package for building finite-state machines using PostgreSQL.
Language: Go - Size: 77.1 KB - Last synced at: 6 days ago - Pushed at: 17 days ago - Stars: 0 - Forks: 0

iwannabebot/SharpFsm
A tiny finite state machine for .NET
Language: C# - Size: 74.2 KB - Last synced at: 18 days ago - Pushed at: 18 days ago - Stars: 0 - Forks: 0

rustic-games/sm π¦
π SM β a static State Machine library
Language: Rust - Size: 817 KB - Last synced at: 9 days ago - Pushed at: over 4 years ago - Stars: 194 - Forks: 13

caleb531/automata
A Python library for simulating finite automata, pushdown automata, and Turing machines
Language: Python - Size: 2.27 MB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 380 - Forks: 70

honhimW/i-spring-enhance
My Spring-Boot application extended configuration
Language: Java - Size: 737 KB - Last synced at: 19 days ago - Pushed at: 19 days ago - Stars: 0 - Forks: 0

StoneCypher/jssm
Fast, easy Javascript finite state machines with visualizations; enjoy a one liner FSM instead of pages. MIT; Typescripted; 100% test coverage. Implements the FSL language.
Language: JavaScript - Size: 28.8 MB - Last synced at: 15 days ago - Pushed at: 3 months ago - Stars: 355 - Forks: 24

AntonioBerna/fsm
A minimal Finite State Machine Designer implemented in C that generates beautiful LaTeX visualizations with TikZ
Language: C - Size: 386 KB - Last synced at: 7 days ago - Pushed at: 21 days ago - Stars: 2 - Forks: 0

DES-Lab/AALpy
An Automata Learning Library Written in Python
Language: Python - Size: 25.6 MB - Last synced at: 20 days ago - Pushed at: 21 days ago - Stars: 182 - Forks: 29

mikelpmc/react-xstate-api-auth
Basic demo to show the usage of React and Xstate with authentication flow
Language: JavaScript - Size: 4.66 MB - Last synced at: 4 days ago - Pushed at: over 2 years ago - Stars: 29 - Forks: 5

choojs/nanostate
π¦- Small Finite State Machines
Language: JavaScript - Size: 25.4 KB - Last synced at: 21 days ago - Pushed at: about 3 years ago - Stars: 173 - Forks: 21

Ed-Pavlov/Binstate
Binstate is a simple but yet powerful state machine for .NET. Thread safe. Supports async methods. Supports hierarchically nested states.
Language: C# - Size: 1.57 MB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 8 - Forks: 4

OpenKNX/OFM-DFA
Module for OpenKNX: State Maschines for KNX defined as Deterministic Finite Automaton (DFA)
Language: C++ - Size: 1.52 MB - Last synced at: 5 days ago - Pushed at: 5 days ago - Stars: 1 - Forks: 1

taylor-marrion/FSM_Binary_Analyzer
Finite State Machine Based Vulnerability Detection in Binary Executables: A Case Study on CWE-457
Size: 216 KB - Last synced at: 24 days ago - Pushed at: 24 days ago - Stars: 0 - Forks: 0

NikolasMarkou/fsm_llm
A Finite State Machine hybrid with Large Language Models
Language: Python - Size: 1.43 MB - Last synced at: 11 days ago - Pushed at: 11 days ago - Stars: 12 - Forks: 0

rendis/statepro
Golang state machine
Language: Go - Size: 436 KB - Last synced at: about 3 hours ago - Pushed at: 7 months ago - Stars: 11 - Forks: 0

sanyabeast/fsm.js π¦
JSSM: A lightweight JavaScript finite state machine library. Define states, transitions, and actions with a clean API. Chain transitions, handle multiple source states, and customize behavior with minimal overhead.
Language: JavaScript - Size: 14.6 KB - Last synced at: 26 days ago - Pushed at: 26 days ago - Stars: 1 - Forks: 0

Inspiaaa/UnityHFSM
A fast, tried-and-tested hierarchical finite state machine library for Unity, designed to be easy to use yet powerful without compromising performance.
Language: C# - Size: 2.82 MB - Last synced at: 27 days ago - Pushed at: 3 months ago - Stars: 1,301 - Forks: 136

zerlok/statomata
a strictly typed, flexible library for building and running state machines in Python
Language: Python - Size: 174 KB - Last synced at: 21 days ago - Pushed at: 23 days ago - Stars: 1 - Forks: 0

sideeffect-io/AsyncStateMachine
Async State Machine aims to provide a way to structure an application thanks to state machines. The goal is to identify the states and the side effects involved in each feature and to model them in a consistent and scalable way.
Language: Swift - Size: 271 KB - Last synced at: 19 days ago - Pushed at: almost 3 years ago - Stars: 58 - Forks: 3

Buroni/automata-golf
A domain-specific language (DSL) for parsing regular, context-free and recursively enumerable languages.
Language: JavaScript - Size: 183 KB - Last synced at: 21 days ago - Pushed at: about 2 years ago - Stars: 17 - Forks: 0

HexagonNico/Godot-FiniteStateMachine
A plugin for Godot 4 that adds an implementation of the finite state machine pattern
Language: GDScript - Size: 480 KB - Last synced at: 30 days ago - Pushed at: 30 days ago - Stars: 67 - Forks: 2

UnterrainerInformatik/FiniteStateMachine
This project is a finite state machine designed to be used in games.
Language: C# - Size: 320 KB - Last synced at: 18 days ago - Pushed at: over 2 years ago - Stars: 61 - Forks: 8

ThePat02/BehaviourToolkit
A collection of tools for AI Behaviour in the Godot 4 Game Engine!
Language: GDScript - Size: 1.39 MB - Last synced at: about 1 month ago - Pushed at: 4 months ago - Stars: 503 - Forks: 18

endurodave/C_StateMachine
State Machine Design in C
Language: C - Size: 152 KB - Last synced at: 23 days ago - Pushed at: 4 months ago - Stars: 144 - Forks: 32

LennartHennigs/SimpleFSM
Arduino/ESP library to simplify setting up and running a state machine.
Language: C++ - Size: 71.3 KB - Last synced at: 29 days ago - Pushed at: 5 months ago - Stars: 83 - Forks: 20

laudspeaker/laudspeaker
π’ Laudspeaker is an Open Source Customer Engagement and Product Onboarding Platform. Open Source alternative to Braze / One Signal / Customer Io / Appcues / Pendo . Use Laudspeaker to design product onboarding flows and send product and event triggered emails, sms, push and more.
Language: TypeScript - Size: 32.2 MB - Last synced at: about 1 month ago - Pushed at: 2 months ago - Stars: 2,357 - Forks: 171

nicholaswmin/fsm
stupid simple, finite-state machine
Language: JavaScript - Size: 59.6 KB - Last synced at: 5 days ago - Pushed at: 6 months ago - Stars: 0 - Forks: 0

looplab/fsm
Finite State Machine for Go
Language: Go - Size: 72.3 KB - Last synced at: about 1 month ago - Pushed at: about 2 months ago - Stars: 3,040 - Forks: 319

danobot/entity-controller
Home Assistant Entity and lighting controller for managing devices with timers, scripts, and sun-based time restrictions.
Language: Python - Size: 5.35 MB - Last synced at: 22 days ago - Pushed at: about 1 year ago - Stars: 310 - Forks: 40

Lexpeartha/nuxt-xstate
XState integration for Nuxt
Language: TypeScript - Size: 2.77 MB - Last synced at: 30 days ago - Pushed at: 3 months ago - Stars: 58 - Forks: 2

thomasduft/microwf
A simple finite state machine (FSM) with workflow character where you define your workflows in code.
Language: C# - Size: 6.51 MB - Last synced at: 27 days ago - Pushed at: 4 months ago - Stars: 177 - Forks: 47

linkdd/aitoolkit
Give a brain to your game's NPCs
Language: C++ - Size: 1.27 MB - Last synced at: about 1 month ago - Pushed at: about 1 year ago - Stars: 483 - Forks: 26

llamacademy/ai-series-part-47
Learn how you can implement Enemy AI with a Finite State Machine
Language: ShaderLab - Size: 70.3 MB - Last synced at: 5 days ago - Pushed at: almost 2 years ago - Stars: 12 - Forks: 4

thbaylson/Unity-Third-Person-Combat
This project started from the course "Unity 3rd Person: Combat & Traversal" by Nathan Farrer. However, I also experimented with some procedural level generation alongside the course material.
Language: C# - Size: 435 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 0 - Forks: 0

io7m-com/jfsm
Finite state machines
Language: Java - Size: 1.53 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 0 - Forks: 0

GuilhE/Expressus
Kotlin Multiplatform Coffee Machine
Language: Kotlin - Size: 13.5 MB - Last synced at: 22 days ago - Pushed at: about 1 month ago - Stars: 112 - Forks: 10

precisely/rapids
A Clojure DSL for scripting user flows
Language: Clojure - Size: 4.49 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 1 - Forks: 0

daac-tools/python-daachorse
π A fast implementation of the Aho-Corasick algorithm using the compact double-array data structure. (Python wrapper for daachorse)
Language: Rust - Size: 3.22 MB - Last synced at: 18 days ago - Pushed at: 3 months ago - Stars: 17 - Forks: 1

HexMerlin/Automata
An optimized library for finite-state automata that includes visualization
Language: C# - Size: 7.52 MB - Last synced at: 7 days ago - Pushed at: about 1 month ago - Stars: 1 - Forks: 0

SimpleStateMachine/SimpleStateMachineNodeEditor
πWPF node editor based on ReactiveUI
Language: C# - Size: 12.5 MB - Last synced at: 29 days ago - Pushed at: over 2 years ago - Stars: 356 - Forks: 61

bestmahdi2/Uni__AdvancedCalculatorFSM-PDA
A university project in which an advanced calculator is implemented using finite state machine and push down automata
Language: Python - Size: 896 KB - Last synced at: 9 days ago - Pushed at: 11 months ago - Stars: 1 - Forks: 0

Ryan1997-tongji/Finite-State-Machine-For-Go
This project implements a general state machine that can be widely used in state transitions in various scenarios.
Language: Go - Size: 9.77 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 0 - Forks: 0

ndsh/occasional-knowledge
a list of things i occasionally need but i am too lazy to put into long-term brain memory Β―\_(γ)_/Β―
Size: 255 KB - Last synced at: 5 days ago - Pushed at: 6 months ago - Stars: 6 - Forks: 2

CPSLabGU/swift-fsmlib
Library for logic-labelled finite-state machines
Language: Swift - Size: 1.13 MB - Last synced at: 17 days ago - Pushed at: 17 days ago - Stars: 0 - Forks: 0

HajjSalad/STM32-Traffic-Control
Traffic Control System to manage 4 traffic lights at an intersection using a Finite State Machine (FSM), GPIO inputs for car detection, and GPIO outputs to drive RGB LEDs.
Language: C - Size: 332 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 0 - Forks: 0

erikzenker/hsm
Finite state machine library based on the boost hana meta programming library. It follows the principles of the boost msm and boost sml libraries, but tries to reduce own complex meta programming code to a minimum.
Language: C++ - Size: 1.54 MB - Last synced at: 20 days ago - Pushed at: over 2 years ago - Stars: 197 - Forks: 17

ninetailsrabbit/indie-blueprint-state-machine
Finite state machines (FSMs) empower you to create intricate behaviors in a modular way. Each state can be defined independently, allowing for data sharing, state transitions, and more
Language: GDScript - Size: 157 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 33 - Forks: 1

ArseniiStratiuk/Discrete-Regex Fork of LidaSemsichko/discrete_regex
Implementation of a basic regex compiler using finite automata and the State design pattern, supporting letters, digits, character classes, *, and + operators.
Language: Python - Size: 337 KB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 0 - Forks: 0

izuzak/noam
JavaScript library for working with automata and grammars for regular and context-free languages
Language: JavaScript - Size: 883 KB - Last synced at: 4 days ago - Pushed at: 10 months ago - Stars: 216 - Forks: 33

steelbreeze/state
Hierarchical finite state machine for TypeScript and JavaScript
Language: JavaScript - Size: 1.9 MB - Last synced at: 15 days ago - Pushed at: about 1 year ago - Stars: 187 - Forks: 21

MinaPecheux/UnityTutorials-FiniteStateMachines
The code for a short tutorial on finite state machines and how to use them for basic 2D physics-based player movement in Unity/C# (in text or video format).
Language: C# - Size: 984 KB - Last synced at: 24 days ago - Pushed at: almost 4 years ago - Stars: 36 - Forks: 11

rluders/gofsm
Simple Finite State Machine written in Go that can play with Redis and Kafka.
Language: Go - Size: 41 KB - Last synced at: 6 days ago - Pushed at: 3 months ago - Stars: 0 - Forks: 0

mratsim/Synthesis
Synthesis is a compiletime, procedure-based, low-overhead, no-allocation, state-machine generator optimized for communicating processes and threads
Language: Nim - Size: 505 KB - Last synced at: about 22 hours ago - Pushed at: about 5 years ago - Stars: 93 - Forks: 5

mseol2/cora
β¨ PyTorch implementation of "Cora: Correspondence-aware Image Editing Using Few-Step Diffusion", accepted at SIGGRAPH 2025.
Language: Python - Size: 25.8 MB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 0 - Forks: 0

kaelzhang/bot-state-machine
Finite state machine for chat bot
Language: JavaScript - Size: 219 KB - Last synced at: 5 days ago - Pushed at: about 2 years ago - Stars: 9 - Forks: 0

lewiuberg/visual-automata π¦
Visual Automata is a Python 3 library built as a wrapper for the Automata library to add more visualization features.
Language: Python - Size: 378 KB - Last synced at: 4 days ago - Pushed at: almost 2 years ago - Stars: 57 - Forks: 9

stateless4j/stateless4j
Lightweight Java State Machine
Language: Java - Size: 269 KB - Last synced at: about 2 months ago - Pushed at: about 2 years ago - Stars: 906 - Forks: 190
