Semi-functional SPA, need firebase integration