complete app with local storage store