/finite_automata

Web application to manage finite state machine!

Primary LanguageTypeScriptMIT LicenseMIT

Finite Automata Web Application

Netlify Status

Feature image

Getting Started

Run the following commands to start the application. You may need to ask for .env from a contributor to make this work.

yarn install
yarn start

Built with

  • React: A JavaScript library for building user interfaces
  • TypeScript: A strongly typed programming language that builds on JavaScript.
  • React Boilerplate meets CRA: Used as template & structure for our project.

Functionality

Function Source code
Design a finite automaton (FA) app/models/FaModel.ts
Test if a FA is deterministic or non-deterministic app/models/FaModel.ts
Test if a string is accepted by a FA app/models/FaModel.ts
Construct an equivalent DFA from an NFA app/services/nfa_to_dfa/NfaToDfaService.tsx
Minimize a DFA app/services/minimize_dfa/MinimizeDfaService.ts

Database

To keep user input data, we use Firebase as a database to save & store them. This also includes CRUD & pagination for a better experience.

Prototype

We use Figma to design our prototype. Explore our design with the following link: Figma Design

Authors

See the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details