added store and styling, caching, validation