gitextract_1xzdirb8/ ├── .github/ │ └── workflows/ │ └── ci.yml ├── .gitignore ├── .gitpod.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── MANIFEST.in ├── Makefile ├── Makefile.bat ├── README.md ├── VERSION ├── bin/ │ └── check_license.sh ├── dev-requirements.txt ├── docs/ │ ├── examples/ │ │ ├── index.md │ │ ├── pyodide/ │ │ │ ├── bouncing/ │ │ │ │ ├── bouncing.py │ │ │ │ ├── bouncingFPS.py │ │ │ │ ├── index.html │ │ │ │ ├── odkaz.txt │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── breakout/ │ │ │ │ ├── breakout-kb.py │ │ │ │ ├── breakout-ms.py │ │ │ │ ├── breakout.py │ │ │ │ ├── index.html │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── flappybird/ │ │ │ │ ├── flappybird.py │ │ │ │ ├── index.html │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── index.html.template │ │ │ ├── memory/ │ │ │ │ ├── LICENCE │ │ │ │ ├── README.md │ │ │ │ ├── index.html │ │ │ │ ├── memory.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── mines/ │ │ │ │ ├── index.html │ │ │ │ ├── mines.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── pong/ │ │ │ │ ├── index.html │ │ │ │ ├── pong.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── samegame/ │ │ │ │ ├── index.html │ │ │ │ ├── samegame.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_001/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_001.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_002/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_002.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_003/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_003.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_004/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_004.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_005/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_005.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_006/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_006.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_007/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_007.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_008/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_008.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_009/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_009.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_010/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_010.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ ├── sketch_011/ │ │ │ │ ├── index.html │ │ │ │ ├── sketch_011.py │ │ │ │ ├── static/ │ │ │ │ │ └── p5.js │ │ │ │ └── target/ │ │ │ │ └── target_sketch.js │ │ │ └── sketch_012/ │ │ │ ├── index.html │ │ │ ├── sketch_012.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ └── target_sketch.js │ │ ├── sketch_000/ │ │ │ ├── index.html │ │ │ ├── sketch_000.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── pyp5js.python_functions.js │ │ │ ├── pyp5js.python_functions.py │ │ │ ├── sketch_000.js │ │ │ ├── sketch_000.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ └── transcrypt/ │ │ ├── index.html.template │ │ ├── sketch_001/ │ │ │ ├── index.html │ │ │ ├── sketch_001.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_002/ │ │ │ ├── index.html │ │ │ ├── sketch_002.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_003/ │ │ │ ├── index.html │ │ │ ├── sketch_003.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_004/ │ │ │ ├── index.html │ │ │ ├── sketch_004.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_005/ │ │ │ ├── index.html │ │ │ ├── sketch_005.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_006/ │ │ │ ├── index.html │ │ │ ├── sketch_006.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_007/ │ │ │ ├── index.html │ │ │ ├── sketch_007.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_008/ │ │ │ ├── index.html │ │ │ ├── sketch_008.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ ├── sketch_009/ │ │ │ ├── index.html │ │ │ ├── sketch_009.py │ │ │ ├── static/ │ │ │ │ └── p5.js │ │ │ └── target/ │ │ │ ├── math.js │ │ │ ├── math.py │ │ │ ├── org.transcrypt.__runtime__.js │ │ │ ├── org.transcrypt.__runtime__.py │ │ │ ├── pyp5js.js │ │ │ ├── pyp5js.py │ │ │ ├── python_functions.js │ │ │ ├── python_functions.py │ │ │ ├── random.js │ │ │ ├── random.py │ │ │ ├── target_sketch.js │ │ │ ├── target_sketch.project │ │ │ └── target_sketch.py │ │ └── sketch_010/ │ │ ├── index.html │ │ ├── sketch_010.py │ │ ├── static/ │ │ │ └── p5.js │ │ └── target/ │ │ ├── org.transcrypt.__runtime__.js │ │ ├── org.transcrypt.__runtime__.py │ │ ├── pyp5js.js │ │ ├── pyp5js.py │ │ ├── python_functions.js │ │ ├── python_functions.py │ │ ├── target_sketch.js │ │ ├── target_sketch.project │ │ └── target_sketch.py │ ├── index.md │ └── pyodide/ │ ├── afterBody.js │ ├── index.html │ ├── index.html.template │ ├── pyodide.py │ ├── share.js │ ├── styles.css │ └── target/ │ └── target_sketch.js ├── pyp5js/ │ ├── __init__.py │ ├── cli.py │ ├── commands.py │ ├── compiler.py │ ├── config/ │ │ ├── __init__.py │ │ ├── fs.py │ │ └── sketch.py │ ├── exceptions.py │ ├── http_local/ │ │ ├── __init__.py │ │ ├── static/ │ │ │ ├── js/ │ │ │ │ ├── ace/ │ │ │ │ │ ├── ace.js │ │ │ │ │ ├── ext-beautify.js │ │ │ │ │ ├── ext-code_lens.js │ │ │ │ │ ├── ext-elastic_tabstops_lite.js │ │ │ │ │ ├── ext-emmet.js │ │ │ │ │ ├── ext-error_marker.js │ │ │ │ │ ├── ext-keybinding_menu.js │ │ │ │ │ ├── ext-language_tools.js │ │ │ │ │ ├── ext-linking.js │ │ │ │ │ ├── ext-modelist.js │ │ │ │ │ ├── ext-options.js │ │ │ │ │ ├── ext-prompt.js │ │ │ │ │ ├── ext-rtl.js │ │ │ │ │ ├── ext-searchbox.js │ │ │ │ │ ├── ext-settings_menu.js │ │ │ │ │ ├── ext-spellcheck.js │ │ │ │ │ ├── ext-split.js │ │ │ │ │ ├── ext-static_highlight.js │ │ │ │ │ ├── ext-statusbar.js │ │ │ │ │ ├── ext-textarea.js │ │ │ │ │ ├── ext-themelist.js │ │ │ │ │ ├── ext-whitespace.js │ │ │ │ │ ├── keybinding-emacs.js │ │ │ │ │ ├── keybinding-sublime.js │ │ │ │ │ ├── keybinding-vim.js │ │ │ │ │ ├── keybinding-vscode.js │ │ │ │ │ ├── mode-python.js │ │ │ │ │ ├── theme-ambiance.js │ │ │ │ │ ├── theme-chaos.js │ │ │ │ │ ├── theme-chrome.js │ │ │ │ │ ├── theme-clouds.js │ │ │ │ │ ├── theme-clouds_midnight.js │ │ │ │ │ ├── theme-cobalt.js │ │ │ │ │ ├── theme-crimson_editor.js │ │ │ │ │ ├── theme-dawn.js │ │ │ │ │ ├── theme-dracula.js │ │ │ │ │ ├── theme-dreamweaver.js │ │ │ │ │ ├── theme-eclipse.js │ │ │ │ │ ├── theme-github.js │ │ │ │ │ ├── theme-gob.js │ │ │ │ │ ├── theme-gruvbox.js │ │ │ │ │ ├── theme-idle_fingers.js │ │ │ │ │ ├── theme-iplastic.js │ │ │ │ │ ├── theme-katzenmilch.js │ │ │ │ │ ├── theme-kr_theme.js │ │ │ │ │ ├── theme-kuroir.js │ │ │ │ │ ├── theme-merbivore.js │ │ │ │ │ ├── theme-merbivore_soft.js │ │ │ │ │ ├── theme-mono_industrial.js │ │ │ │ │ ├── theme-monokai.js │ │ │ │ │ ├── theme-nord_dark.js │ │ │ │ │ ├── theme-pastel_on_dark.js │ │ │ │ │ ├── theme-solarized_dark.js │ │ │ │ │ ├── theme-solarized_light.js │ │ │ │ │ ├── theme-sqlserver.js │ │ │ │ │ ├── theme-terminal.js │ │ │ │ │ ├── theme-textmate.js │ │ │ │ │ ├── theme-tomorrow.js │ │ │ │ │ ├── theme-tomorrow_night.js │ │ │ │ │ ├── theme-tomorrow_night_blue.js │ │ │ │ │ ├── theme-tomorrow_night_bright.js │ │ │ │ │ ├── theme-tomorrow_night_eighties.js │ │ │ │ │ ├── theme-twilight.js │ │ │ │ │ ├── theme-vibrant_ink.js │ │ │ │ │ ├── theme-xcode.js │ │ │ │ │ ├── worker-coffee.js │ │ │ │ │ ├── worker-css.js │ │ │ │ │ ├── worker-html.js │ │ │ │ │ ├── worker-javascript.js │ │ │ │ │ ├── worker-json.js │ │ │ │ │ ├── worker-lua.js │ │ │ │ │ ├── worker-php.js │ │ │ │ │ ├── worker-xml.js │ │ │ │ │ └── worker-xquery.js │ │ │ │ ├── p5/ │ │ │ │ │ ├── addons/ │ │ │ │ │ │ └── p5.sound.js │ │ │ │ │ └── p5.js │ │ │ │ └── pyodide/ │ │ │ │ ├── packages.json │ │ │ │ ├── pyodide.asm.data │ │ │ │ ├── pyodide.asm.js │ │ │ │ ├── pyodide.asm.wasm │ │ │ │ ├── pyodide.js.map │ │ │ │ └── pyodide_v0.18.1.js │ │ │ ├── p5_reference.yml │ │ │ └── styles/ │ │ │ └── custom.css │ │ ├── templates/ │ │ │ ├── base.html │ │ │ ├── index.html │ │ │ ├── new_sketch_form.html │ │ │ ├── new_sketch_success.html │ │ │ └── view_sketch.html │ │ └── web_app.py │ ├── monitor.py │ ├── sketch.py │ ├── templates/ │ │ ├── pyodide/ │ │ │ ├── base_sketch.py.template │ │ │ ├── index.html │ │ │ └── target_sketch.js.template │ │ └── transcrypt/ │ │ ├── base_sketch.py.template │ │ ├── index.html │ │ ├── pyp5js.py │ │ ├── python_functions.py │ │ └── target_sketch.py.template │ ├── templates_renderers.py │ └── tests/ │ ├── __init__.py │ ├── fixtures.py │ ├── test_commands.py │ ├── test_compiler.py │ ├── test_config/ │ │ ├── __init__.py │ │ ├── test_fs.py │ │ └── test_sketch.py │ ├── test_http/ │ │ └── test_web_app.py │ ├── test_monitor.py │ ├── test_pyp5js.py │ ├── test_sketch.py │ └── test_templates_renderers.py ├── pytest.ini ├── requirements.txt └── setup.py