i don't particularly like codepen; the layout's cramped and there are too many knobs and switches. this project is a codepen clone which is basically just a textarea and an iframe. it represents a couple hours of work, the maximum i was willing to invest in something "kinda useful". it ain't much but its ~~~honest work~~~ just the right balance of capability/simplicity for me.
whole thing is implemented using the VANILLA stack, where we just use the platform as is, for the frontend and deno for the backend.
here's an overview of the different files ordered by approximate importance:
views/: templates for html shown to usersrc/server.ts: renders views inviews/+ interacts with database throughsrc/model.ts+ notifies clients of changes using server-sent eventssrc/model.ts: interacts with database + contains business logicsrc/config.ts: contains various configuration variables. can be overwritten with environment variablesdeno.lock: deno's dependencies are just urls. this file ensures there's no tomfoolery going on.flake.nixalso uses this to achieve deterministic dependencies.deno.json: super boringgggg
at some point i'd like to...