diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000..bc16a8c
Binary files /dev/null and b/.DS_Store differ
diff --git a/.github/.DS_Store b/.github/.DS_Store
new file mode 100644
index 0000000..66eedd2
Binary files /dev/null and b/.github/.DS_Store differ
diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml
new file mode 100644
index 0000000..dc0424d
--- /dev/null
+++ b/.github/workflows/deploy.yaml
@@ -0,0 +1,53 @@
+# Workflow to publish Godot HTML5 games to GitHub Pages
+#
+# Make sure your project is configured for Web export to the path `build/web`.
+
+name: 'Publish to GitHub Pages'
+
+env:
+ GODOT_VERSION: 4.2 # Remember to manually set image to this version below.
+
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - master
+
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+
+ container:
+ image: barichello/godot-ci:4.2
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Move HTML5 templates into position
+ run: |
+ mkdir -v -p ~/.local/share/godot/export_templates
+ mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
+ - name: Create staging directory
+ run: mkdir -v -p build/web
+
+ - name: Build
+ run: godot -v --export-release --headless "Web" ../build/web/index.html project/project.godot
+
+ - name: Add coi-service-worker
+ run: |
+ git clone https://github.com/gzuidhof/coi-serviceworker.git
+ mv coi-serviceworker/coi-serviceworker.js build/web/coi-serviceworker.js
+ sed -i '3 i ' build/web/index.html
+
+ - name: Deploy
+ uses: peaceiris/actions-gh-pages@v3.9.3
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./build/web
+ force_orphan: true
+ user_name: 'github-ci[bot]'
+ user_email: 'github-actions[bot]@users.noreply.github.com'
+ commit_message: 'Publish to gh-pages'
\ No newline at end of file
diff --git a/.gitignore.txt b/.gitignore.txt
new file mode 100644
index 0000000..1dbde5f
--- /dev/null
+++ b/.gitignore.txt
@@ -0,0 +1,17 @@
+# Godot-specific ignores
+.import/
+export.cfg
+.godot/
+
+# Imported translations (automatically generated from CSV files)
+*.translation
+
+# Mono-specific ignores
+.mono/
+data_*/
+
+#Other
+build
+project/.import
+.DS_Store
+project/.DS_Store
\ No newline at end of file
diff --git a/.gitignore b/.gitignore_old
similarity index 100%
rename from .gitignore
rename to .gitignore_old
diff --git a/builds/.DS_Store b/builds/.DS_Store
new file mode 100644
index 0000000..ca2422d
Binary files /dev/null and b/builds/.DS_Store differ
diff --git a/project/.gitattributes b/project/.gitattributes
new file mode 100644
index 0000000..8ad74f7
--- /dev/null
+++ b/project/.gitattributes
@@ -0,0 +1,2 @@
+# Normalize EOL for all files that Git considers text files.
+* text=auto eol=lf
diff --git a/project/.gitignore b/project/.gitignore
new file mode 100644
index 0000000..4709183
--- /dev/null
+++ b/project/.gitignore
@@ -0,0 +1,2 @@
+# Godot 4+ specific ignores
+.godot/
diff --git a/project/export_presets.cfg b/project/export_presets.cfg
new file mode 100644
index 0000000..fd51da4
--- /dev/null
+++ b/project/export_presets.cfg
@@ -0,0 +1,37 @@
+[preset.0]
+
+name="Web"
+platform="Web"
+runnable=true
+dedicated_server=false
+custom_features=""
+export_filter="all_resources"
+include_filter=""
+exclude_filter=""
+export_path="../builds/web/index.html"
+encryption_include_filters=""
+encryption_exclude_filters=""
+encrypt_pck=false
+encrypt_directory=false
+
+[preset.0.options]
+
+custom_template/debug=""
+custom_template/release=""
+variant/extensions_support=false
+vram_texture_compression/for_desktop=false
+vram_texture_compression/for_mobile=false
+html/export_icon=true
+html/custom_html_shell=""
+html/head_include=""
+html/canvas_resize_policy=2
+html/focus_canvas_on_start=true
+html/experimental_virtual_keyboard=false
+progressive_web_app/enabled=false
+progressive_web_app/offline_page=""
+progressive_web_app/display=1
+progressive_web_app/orientation=0
+progressive_web_app/icon_144x144=""
+progressive_web_app/icon_180x180=""
+progressive_web_app/icon_512x512=""
+progressive_web_app/background_color=Color(0, 0, 0, 1)
diff --git a/project/icon.svg b/project/icon.svg
new file mode 100644
index 0000000..b370ceb
--- /dev/null
+++ b/project/icon.svg
@@ -0,0 +1 @@
+
diff --git a/project/icon.svg.import b/project/icon.svg.import
new file mode 100644
index 0000000..b694bdc
--- /dev/null
+++ b/project/icon.svg.import
@@ -0,0 +1,37 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bghl6w2f1nfa5"
+path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://icon.svg"
+dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
+svg/scale=1.0
+editor/scale_with_editor_scale=false
+editor/convert_colors_with_editor_theme=false
diff --git a/project/node_3d.tscn b/project/node_3d.tscn
new file mode 100644
index 0000000..b723879
--- /dev/null
+++ b/project/node_3d.tscn
@@ -0,0 +1,3 @@
+[gd_scene format=3 uid="uid://bp6nf2p8c3qnl"]
+
+[node name="Node3D" type="Node3D"]
diff --git a/project/project.godot b/project/project.godot
new file mode 100644
index 0000000..6057d6a
--- /dev/null
+++ b/project/project.godot
@@ -0,0 +1,20 @@
+; Engine configuration file.
+; It's best edited using the editor UI and not directly,
+; since the parameters that go here are not all obvious.
+;
+; Format:
+; [section] ; section goes between []
+; param=value ; assign values to parameters
+
+config_version=5
+
+[application]
+
+config/name="Toy 4"
+config/features=PackedStringArray("4.2", "GL Compatibility")
+config/icon="res://icon.svg"
+
+[rendering]
+
+renderer/rendering_method="gl_compatibility"
+renderer/rendering_method.mobile="gl_compatibility"