The netsuite file cabinet can serve as a static web host. We built a standard API interface that runs as a restlet or suitelet which presents a common json message format for requests/responses. So the data layer for the front end app is suitelet or restlet, the web app itself is just served up from the file cabinet. If you want/need the app to have netsuite's menu and stuff, you can host the web app in an iframe on a generic UI suitelet.