ideas for caching data locally