WebApp: first draft