frontend overhaul and offline fixes
add requirements