diff --git a/README.md b/README.md
index 22f73fa..1733471 100644
--- a/README.md
+++ b/README.md
@@ -8,17 +8,30 @@
- 3334: Python backend server
- 3335: PostgreSQL
-backend-for-frontend server
+1. PostgreSQL
+2. ~~Python ML server~~
+3. Backend server
+4. ~~Suricata~~
+5. Apache + ModSecurity
+6. Client
-!remember to set the environment variables
-!include this in the setup instructions
-!should we use a .env file and let the user set the variables?
+## Presentation Flow
-PGHOST=localhost
-PGPORT=5432
-PGDATABASE=asdfdb
-PGUSER=asdfuser
-PGPASSWORD=asdfpassword
+1. [video] start postgres: postgres docker compose -> start pg docker
+2. [video] start backend: show main.go -> http.go -> db.go -> go build . -> ./server
+3. [video] setup db: postman -> /nuke-db -> /setup-demo-db
+4. skip account registration
+5. [video] login account normally -> show normal login
+6. [video] do sql injection on unsecure endpoint -> show success
+7. [video] do sql injection on secure endpoint -> show unsuccess
+8. [slides] show backend code, unsecure login endpoint -> show concatenation of sql query
+9. [slides] show backend code, secure login endpoint -> parameterization of sql query
+10. [video] start apache reverse proxy + modsecurity: docker compose file -> start docker
+11. [video] change server url on client to reverse proxy -> do sql injection -> show rejection
+12. [video] zaproxy scan endpoint: start zaproxy -> send first request to unsecure server endpoint with arguments -> include context -> start attack -> show breached
+ 1. `Content-Type: application/json`
+ 2. same as on top
+13. [video] zaproxy scan reverse proxy: send first request to unsecure reverse proxy endpoint with argumens -> include context -> start attack -> show unbreached
## Server
@@ -47,9 +60,11 @@ Parameterized queries separate the SQL code from the data, so user input is neve
## ZAP
-Content-Type: application/json
+`Content-Type: application/json`
+```json
{
-"email": "tohyouxuan@gmail.com",
-"password": "testpassword"
+ "email": "tohyouxuan@gmail.com",
+ "password": "testpassword"
}
+```
diff --git a/client/install.sh b/client/install.sh
new file mode 100644
index 0000000..6294cba
--- /dev/null
+++ b/client/install.sh
@@ -0,0 +1,2 @@
+sudo rm /usr/local/bin/cspj-application
+sudo cp ./src-tauri/target/release/cspj-application /usr/local/bin
\ No newline at end of file
diff --git a/client/src/components/Pages/SqlInjection/SqlInjection.tsx b/client/src/components/Pages/SqlInjection/SqlInjection.tsx
index 25284e5..ba37cc3 100644
--- a/client/src/components/Pages/SqlInjection/SqlInjection.tsx
+++ b/client/src/components/Pages/SqlInjection/SqlInjection.tsx
@@ -78,8 +78,8 @@ export const SqlInjection = () => {
>
-
- the logged in account details goes here
+ {/*
+ the logged in account details goes here */}