{"id":21009460,"url":"https://github.com/memgonzales/turing-machine-variants","last_synced_at":"2026-04-27T09:30:56.670Z","repository":{"id":112399015,"uuid":"568380628","full_name":"memgonzales/turing-machine-variants","owner":"memgonzales","description":"Interactive website for simulating variants of finite automata, Turing machines with 2D tapes, and k-queue automata","archived":false,"fork":false,"pushed_at":"2023-01-26T01:32:26.000Z","size":429,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-29T02:32:59.112Z","etag":null,"topics":["automata","automata-simulator","automata-theory","automaton","finite-automata","finite-automaton","finite-automaton-simulator","pushup-counter","turing-machine","turing-machine-simulator"],"latest_commit_sha":null,"homepage":"https://turing-machine-variants.vercel.app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/memgonzales.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-20T11:04:27.000Z","updated_at":"2023-01-26T01:22:18.000Z","dependencies_parsed_at":"2023-05-14T12:30:46.321Z","dependency_job_id":null,"html_url":"https://github.com/memgonzales/turing-machine-variants","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/memgonzales/turing-machine-variants","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fturing-machine-variants","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fturing-machine-variants/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fturing-machine-variants/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fturing-machine-variants/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/memgonzales","download_url":"https://codeload.github.com/memgonzales/turing-machine-variants/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/memgonzales%2Fturing-machine-variants/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32331305,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"online","status_checked_at":"2026-04-27T02:00:06.769Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automata","automata-simulator","automata-theory","automaton","finite-automata","finite-automaton","finite-automaton-simulator","pushup-counter","turing-machine","turing-machine-simulator"],"created_at":"2024-11-19T09:16:54.009Z","updated_at":"2026-04-27T09:30:56.586Z","avatar_url":"https://github.com/memgonzales.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Turing Machine Variants\n\n![badge][badge-html5]\n![badge][badge-bootstrap]\n![badge][badge-js]\n![badge][badge-jquery]\n![badge][badge-prettier]\n![Vercel](https://therealsujitk-vercel-badge.vercel.app/?app=turing-machine-variants)\n\nThis project is an interactive website for simulating the following abstract machines:\n- Two-way deterministic and nondeterministic **finite automata**\n- Two-way deterministic and nondeterministic **Turing machines with two-dimensional tapes**\n- Two-way deterministic and nondeterministic **\u003ci\u003ek\u003c/i\u003e-queue automata**\n\nIt also allows the user to explore all the possible paths (runs) for nondeterministic automata and provides a theoretical analysis of selected abstract machine variants.\n\nThis website is the major course output in an automata, computability, and formal languages class for master's students under Dr. Arnulfo P. Azcarraga of the Department of Software Technology, De La Salle University.\n\n## Project Structure\nThis project consists of the following folders:\n\n| Folder                                                                                | Description                   |\n| ------------------------------------------------------------------------------------- | ----------------------------- |\n| [`assets`](https://github.com/memgonzales/turing-machine-variants/tree/master/assets)   | Contains the image files      |\n| [`scripts`](https://github.com/memgonzales/turing-machine-variants/tree/master/scripts) | Contains the JavaScript files |\n| [`style`](https://github.com/memgonzales/turing-machine-variants/tree/master/style)     | Contains the CSS style sheets |\n\nIt also includes the following files:\n\n| File                                                                                              | Description                                                 |\n| ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- |\n| [`index.html`](https://github.com/memgonzales/turing-machine-variants/blob/master/index.html)     | Webpage for finite automata (home page)                        |\n| [`k-queue.html`](https://github.com/memgonzales/turing-machine-variants/blob/master/k-queue.html)   | Webpage for Turing machines with two-dimensional tapes  |\n| [`turing-2d.html`](https://github.com/memgonzales/turing-machine-variants/blob/master/turing-2d.html) | Webpage for \u003ci\u003ek\u003c/i\u003e-queue automata                         |\n\n## Running the Simulator\n\n### Running on the Web\n\nOpen the following website: https://turing-machine-variants.vercel.app/\n\n### Running Locally\n\n1. Create a copy of this repository:\n\n    - If [git](https://git-scm.com/downloads) is installed, type the following command on the terminal:\n\n        ```\n        git clone https://github.com/memgonzales/turing-machine-variants\n        ```\n\n    - If git is not installed, click the green `Code` button near the top right of the repository and choose [`Download ZIP`](https://github.com/memgonzales/turing-machine-variants/archive/refs/heads/master.zip). Once the zipped folder has been downloaded, extract its contents.\n\n2. Open [`index.html`](https://github.com/memgonzales/turing-machine-variants/blob/master/index.html).\n\n    - There is no need to install any additional software or dependency. However, internet connection is required to load fonts, libraries, and toolkits from their respective content delivery networks (CDNs).\n\n\u003cbr\u003e\n\n   \u003cimg src=\"https://github.com/memgonzales/turing-machine-variants/blob/master/assets/screenshot-1.PNG?raw=True\" alt=\"Turing machine\" width = 750\u003e \u003cbr\u003e\n   \u003cimg src=\"https://github.com/memgonzales/turing-machine-variants/blob/master/assets/screenshot-2.PNG?raw=True\" alt=\"k-queue automaton\" width = 750\u003e \u003cbr\u003e\n   \u003cimg src=\"https://github.com/memgonzales/turing-machine-variants/blob/master/assets/screenshot-3.PNG?raw=True\" alt=\"nondeterminism\" width = 750\u003e \u003cbr\u003e\n   \n\n\n## Built Using\n\nThis project uses **JavaScript** to carry out all the operations and computations on the client-side. Additional libraries and toolkits are enumerated in the following table:\n\n| Library/Toolkit                                                            | Version | Description                                                                                                                  | License                                                                        |\n| -------------------------------------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |\n| [jQuery](https://jquery.com/)                                              | 3.5.1   | Fast, small, and feature-rich JavaScript library for HTML document traversal and manipulation, event handling, and animation | MIT License                                                                    |\n| [Bootstrap](https://getbootstrap.com/)  | 5.0.2 | Front-end toolkit featuring Sass variables and mixins, responsive grid system, prebuilt components, and JavaScript plugins | MIT License |\n\n_The descriptions of these technologies are taken from their respective websites._\n\nThe opinionated code formatter [Prettier](https://prettier.io/) was employed to enforce uniformity and consistency of coding style.\n\nThis website is deployed on the cloud platform-as-a-service [Vercel](https://vercel.com/).\n\n## Author\n-   \u003cb\u003eMark Edward M. Gonzales\u003c/b\u003e \u003cbr/\u003e\n    mark_gonzales@dlsu.edu.ph \u003cbr/\u003e\n    gonzales.markedward@gmail.com \u003cbr/\u003e\n    \nAssets (images) are properties of their respective owners. Attribution is found in the [credits](https://github.com/memgonzales/turing-machine-variants/blob/master/CREDITS.md) file.\n\n[badge-html5]: https://img.shields.io/badge/html5-%23E34F26.svg?style=flat\u0026logo=html5\u0026logoColor=white\n[badge-bootstrap]: https://img.shields.io/badge/bootstrap-%23563D7C.svg?style=flat\u0026logo=bootstrap\u0026logoColor=white\n[badge-js]: https://img.shields.io/badge/javascript-%23323330.svg?style=flate\u0026logo=javascript\u0026logoColor=%23F7DF1E\n[badge-jquery]: https://img.shields.io/badge/jquery-%230769AD.svg?style=flat\u0026logo=jquery\u0026logoColor=white\n[badge-php]: https://img.shields.io/badge/PHP-777BB4?style=flate\u0026logo=php\u0026logoColor=white\n[badge-prettier]: https://img.shields.io/badge/prettier-1A2C34?style=flat\u0026logo=prettier\u0026logoColor=F7BA3E\n[badge-heroku]: https://img.shields.io/badge/Heroku-430098?style=flat\u0026logo=heroku\u0026logoColor=white\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemgonzales%2Fturing-machine-variants","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmemgonzales%2Fturing-machine-variants","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmemgonzales%2Fturing-machine-variants/lists"}