diff --git a/index.kn b/index.kn
new file mode 100644
index 0000000000000000000000000000000000000000..9e158aac56a5333f8948d8421f3bbb7981401049
--- /dev/null
+++ b/index.kn
@@ -0,0 +1,3 @@
+# There's nothing for you here!
+
+This is just a placeholder page.
diff --git a/kral.k b/kral.k
old mode 100644
new mode 100755
index 9f38a4434c21a64f4960f205e48afc50810d1142..187763dea985de00d626cd9fa8121ae36c865300
--- a/kral.k
+++ b/kral.k
@@ -1,3 +1,4 @@
+#!/usr/bin/env -S rlwrap /home/phil/build/ngn-k/k
 /stringify
 sd:`i!({$x})
 str:{sd[@x][x]}
@@ -16,10 +17,10 @@ sd[`e]:{$x}
 sd[`A]:{"(",|")",|1_,//{" ",str[x]}'[x]}
 sd[`I]:sd[`A]
 sd[`D]:sd[`A]
-sd[`C]:{,//x}
+sd[`C]:{"\"",,//x,"\""}
 sd[`S]:sd[`A] /{1_,//{,//" `",$x}'[x]}
 sd[`M]:{`TODO}
-w:{"/dev/stdout"0:str[x],"\r"}
+w:{"/dev/stdout"0:x}
 
 //stringify tests
 /wtest1:(5;2.5;"a";`b;`foo;d1;{x};{x+y}[;3];(*|:);(+/);(+:);(+);(/))
@@ -27,11 +28,24 @@ /wtest2:{x,x,x}'[wtest]
 /wt1:{w[str[wtest1[x]]]}
 /wt2:{w[str[wtest2[x]]]}
 
+/get file
+d:`env[`"SCRIPT_PATH"] /if deployed via cgi
+/d:$[" "=*d;`env[`PWD],"/";] /if testing offline
+d:"/"/|1_|"/"\d
+argv:"\/"\`env[`"PATH_INFO"]
+f:*argv
+f:$[~".kn"=|(|f)[!3];"index.kn";] /FIXME
+f:d,"/",f
+p:0:f
+
 /process document
-p:0:"test.kn"
 k:{(0 1)~x?"%k"}
 ki:&k'[p]
 in:.'3_'p[ki]
 put:{?[x;1+(y;y);,z]}
 out:{$[0=#y;x;o[put[x;*y;*z];1+1_y;1_z]]}
-out[p;ki;in]
+p:(,"20 text/gemini"),out[p;ki;in]
+p[&{~`C=@x}@'p]:$p[&{~`C=@x}@'p]
+w[{x,"\r"}'[p]]
+w[d,"\r"]
+w[f,"\r"]
