β DFA-MINIMIZATION

DFA-Minimization is a website to minimize DFA using Table Filling Method.
β Featuresπ‘
By using DFA-Minimization you can:
- Minimize DFA using Table Filling Method.
- Get description (transition diagram, transition table, and detailed description) of DFA before minimization.
- Get description (transition diagram, transition table, and detailed description) of DFA after minimization.
β Technology π¨βπ»
DFA-Minimization is created using:
- Pythonβ -
Python as the main programming language.
- Flaskβ - Flask is a web framework for Python, based on the Werkzeug toolkit.
- PyScriptβ - PyScript is a framework that allows to create rich Python applications in the browser.
- Bootstrapβ - Bootstrap is a front-end framework that allows for the creation of easy and responsive web layouts.
- Herokuβ - Heroku is a platform as a service (PaaS) that we use to deploy our apps.
- Dockerβ - Docker is a platform for developing, shipping, and running our applications.
β Structure π
DFA-Minimization
βββ .github
βββ handlers
βββ modules
βββ static
β βββ images
β βββ scripts
β βββ styles
βββ templates
βββ tests
βββ .gitignore
βββ Dockerfile
βββ LICENSE
βββ Procfile
βββ README.md
βββ app.py
βββ requirements.txt
- .githubβ is a folder that used to place Github related stuff, like issue template and CI pipeline.
- handlersβ contain handler to handling HTTP request methods, especially POST method.
- modulesβ contain the main modules for minimizing DFA using Table Filling Method.
- staticβ contain static files like images, CSS, and JavaScript files.
- templatesβ contain the file that will be rendered for display in the browser.
- testsβ contain unit test to make sure the main module work properly.
- .gitignoreβ is a file to exclude some folders like venv.
- LICENSEβ is a file that contains the license we use in this app.
- Dockerfileβ is a file that contains all the commands to build an image.
- Procfileβ is a file that specifies the commands that are executed by an Heroku app on startup.
- README.mdβ is the file you are reading now.
- app.pyβ is the main file of this app.
- requirements.txtβ is a file that contains a list of dependencies used in this app.
β Requirements π¦
- Python 3.10 or later
- Docker 20.10.17 or later
- PyScript 2022.09.1 or later
β Installation π οΈ
docker pull putuwaw/dfa-minimization
- Run the downloaded image:
docker run -p 8000:8000 putuwaw/dfa-minimization
- Open web browser and visit:
β Contributors β¨