{"id":21526761,"url":"https://github.com/dragonwasrobot/brainfuck","last_synced_at":"2026-03-09T19:14:18.069Z","repository":{"id":10769534,"uuid":"13034040","full_name":"dragonwasrobot/brainfuck","owner":"dragonwasrobot","description":"A brainfuck interpreter written in Elm","archived":false,"fork":false,"pushed_at":"2024-11-20T07:31:29.000Z","size":736,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-24T01:23:35.146Z","etag":null,"topics":["brainfuck","elm","elm-lang","interpreter"],"latest_commit_sha":null,"homepage":"","language":"Elm","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dragonwasrobot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2013-09-23T11:30:01.000Z","updated_at":"2024-11-20T07:31:29.000Z","dependencies_parsed_at":"2023-01-11T17:56:48.089Z","dependency_job_id":"363686ed-5357-46fe-bb7e-6d2f198bbab2","html_url":"https://github.com/dragonwasrobot/brainfuck","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dragonwasrobot%2Fbrainfuck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dragonwasrobot%2Fbrainfuck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dragonwasrobot%2Fbrainfuck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dragonwasrobot%2Fbrainfuck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dragonwasrobot","download_url":"https://codeload.github.com/dragonwasrobot/brainfuck/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248130078,"owners_count":21052693,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["brainfuck","elm","elm-lang","interpreter"],"created_at":"2024-11-24T01:46:35.170Z","updated_at":"2026-03-09T19:14:18.063Z","avatar_url":"https://github.com/dragonwasrobot.png","language":"Elm","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Brainfuck\n\nThis is an implementation of a brainfuck interpreter written in Elm.\n\n**An online demo can be found here:** https://www.dragonwasrobot.com/brainfuck/\n\n## Setup\n\nEnsure you have node.js 24 and Elm 0.19.1 installed. The project uses\n[mise-en-place](https://mise.jdx.dev/) for managing compiler/runtime versions\nand task management.\n\n### Local development loop\n\nWith Elm installed, perform the following steps:\n\n    $ mise watch dev\n    $ mise run serve\n\nin two different terminal windows/tabs. These commands together do the following:\n\n- Recompile tailwind CSS upon file changes.\n- Recompile Elm to JS upon file changes.\n- Rerun tests upon file changes.\n- Setup a tiny local HTTP server to serve brainfuck source files.\n\nIf you don't want to use `mise` you can consult the different `scripts` found in\n`package.json` and run a way you prefer.\n\n### Production build\n\n- Run the command `./build.sh` to compile the source, then\n- open `docs/index.html` in your favorite browser.\n\n## Commands\n\nThe brainfuck language consists of the following eight commands:\n\n- `\u003e` increments the data pointer\n- `\u003c` decrements the data pointer\n- `+` increments the byte at the data pointer\n- `-` decrements the byte at the data pointer\n- `.` outputs the byte at the data pointer\n- `,` prompts the user for a one byte input\n- `[` jumps to the next `]` if the byte at the data pointer is zero\n- `]` jumps to the previous `[` if the byte at the data pointer is nonzero\n\n## Inspiration\n\n- The look and feel of the UI is adapted from the 70's technical documentation\n  inspired mock-ups at https://usgraphics.com/products/berkeley-mono\n- Most of the example brainfuck programs are from https://brainfuck.org/ and\n  originally authored by Daniel B Cristofani.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdragonwasrobot%2Fbrainfuck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdragonwasrobot%2Fbrainfuck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdragonwasrobot%2Fbrainfuck/lists"}