add basic html, css, js
refactoring, some fixes