diff --git a/WASM/basic_template.html b/WASM/basic_template.html
new file mode 100644
index 0000000..1b2f8dd
--- /dev/null
+++ b/WASM/basic_template.html
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+ Emscripten-Generated Code
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WASM/pge2wasm.bat b/WASM/pge2wasm.bat
new file mode 100644
index 0000000..6b77424
--- /dev/null
+++ b/WASM/pge2wasm.bat
@@ -0,0 +1,108 @@
+@echo off
+:: Convenience Utility to build projects using olc::PixelGameEngine, using
+:: Emscripten, producing WASM based output.
+::
+:: OneLoneCoder.com 2021 - Released under OLC-3 license
+::
+:: v1.00: Initial Release
+
+setlocal enabledelayedexpansion enableextensions
+
+:: Customize here ===========================================
+
+:: Location of Emscripten SDK
+set EMSDK="e:\pge_ems\emsdk\"
+
+:: Location of olc::PixelGameEngine header file
+set OLCPGE=".\"
+set OLCPGE="e:\pge_dev\olcPixelGameEngine_dev\Deploy"
+
+:: ==========================================================
+
+set WORKINGDIR=%CD%
+
+if not exist %EMSDK% (
+ echo Error: No Emscripten SDK folder found!
+ goto :fail
+)
+
+if not exist %OLCPGE% (
+ echo Error: Invalid PGE Location!
+ goto :fail
+)
+
+if "%1"=="build" goto :build
+if "%1"=="run" goto :run
+if "%1"=="clean" goto :clean
+goto :error
+
+:build
+ :: Configure path variables
+ cd %EMSDK%
+ call emsdk_env.bat
+
+ :: Create working folder
+ cd %WORKINGDIR%
+ if not exist ".\WASM" (
+ echo Creating .\WASM output folder
+ mkdir ".\WASM"
+ )
+
+ :: Grab all cpp files if no specific file is given
+ if "%~2"=="" goto :graball
+ set CPP=%~2
+ goto :embuild
+
+:graball
+ echo Gathering *.cpp files from
+ echo %CD%
+ set CPP=
+ for %%x in (%CD%\*.cpp) do set CPP=!CPP! %%x
+ set CPP=%CPP:~1%
+
+:embuild
+
+echo %CPP%
+ if exist "./assets" (
+ echo Starting Build with assets...
+ call em++ -std=c++17 -O2 -s ALLOW_MEMORY_GROWTH=1 -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_LIBPNG=1 %CPP% -o .\WASM\pge.html -I %OLCPGE% --preload-file .\assets
+ ) else (
+ echo Starting Build without assets...
+ call em++ -std=c++17 -O2 -s ALLOW_MEMORY_GROWTH=1 -s MAX_WEBGL_VERSION=2 -s MIN_WEBGL_VERSION=2 -s USE_LIBPNG=1 %CPP% -o .\WASM\pge.html -I %OLCPGE%
+ )
+
+ echo Build Completed
+ goto :success
+
+:run
+ :: Configure path variables
+ cd %EMSDK%
+ call emsdk_env.bat
+ cd %WORKINGDIR%
+ emrun .\WASM\pge.html
+ goto :success
+
+:clean
+ if exist ".\WASM" (
+ rmdir /s /q .\WASM
+ )
+ goto :success
+
+:error
+ echo Error: Incorrect Input
+ goto :fail
+
+:success
+ echo Exit With Success
+ goto :leave
+
+:fail
+ echo Exit with Failure
+ goto :leave
+
+:leave
+ exit
+
+
+
+
diff --git a/WASM/readme.md b/WASM/readme.md
new file mode 100644
index 0000000..6b07475
Binary files /dev/null and b/WASM/readme.md differ