diff --git a/App/StitchATon2.App.csproj b/App/StitchATon2.App.csproj
index 4b7d0a2..ff5d1d5 100644
--- a/App/StitchATon2.App.csproj
+++ b/App/StitchATon2.App.csproj
@@ -5,11 +5,7 @@
enable
enable
true
- true
StitchATon2.App
-
-
-
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e9d5616
--- /dev/null
+++ b/README.md
@@ -0,0 +1,31 @@
+# Stitch-a-ton Contest Submission
+
+## Installation
+
+### 1. Build
+
+Install dependencies:
+```
+wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb
+sudo dpkg -i packages-microsoft-prod.deb
+sudo apt update
+sudo apt install -y dotnet-sdk-8.0
+```
+
+Build the project in `App` folder using command:
+```
+dotnet publish -c Release -r linux-arm64 --self-contained true -o ./publish
+```
+
+### 2. Running the app
+
+After publishing, enter the folder `/publish` then run
+```
+./StitchATon2.App
+```
+
+## Approach
+Since we only serve a static assets and the output is downscale only, I think it's good to pre-process each image to [image integral](https://en.wikipedia.org/wiki/Summed-area_table) first and then save it to another directory (eg. temp).
+
+Later, we can apply Box Filter averaging on the fly to output Stream (HttpResponse).
+