###### tags: `Guide To Contibuting` # Basic HTML Interfaces With some simple HTML, you can make interfaces, however BYOND uses IE as it's "browser". Which means *some* html feature is nonexistent. You can check compatability of these at <https://caniuse.com> ## Normal HTML interface This is recommended for admin UIs (like banning) or important UIs (varedit pannel). But the [Datum HTML Interface](#Datum-HTML-interface) is recommended as it already has some basic css theme on it. Or even better, if you want a fancy but still fast UI, you can use [TGUI](/WXQWZ4fTQ-Wse_ZFzIx6EQ). To show a user a new window, you just have to do this: `usr << browse(Body,Options)` This sends the html text or file to the user and optionally displays it in the web browser. Passing in '`null`' for the html text causes the browser panel or named window to be closed. More info [here](https://secure.byond.com/docs/ref/index.html#/proc/browse). Example: ```DM var/dat = "<center><b>" dat += "THELAW" dat += "</b></center>" dat += "<b>Is beepsky.</b>" usr << browse(dat, "window=THE LAW;display=1;size=300x300;") ``` This should show a 300x300 window named "THE LAW" containing this: <center><b>THELAW</b></center> <b>Is beepsky.</b> ## Datum HTML interface datum browser thing. and tell them that you can import custom css or asset cache css ```DM var/datum/browser/popup = new() popup.open() ```