Существует несколько вариантов хранения данных в браузере пользователя - выбирайте вариант в зависимости от требований вашего проекта.
Используйте CacheStorage API для хранения данных для офф-лайнового доступа.
IndexedDB - лучший выбор для хранения большого количества приложений или пользовательских данных.
Файлы cookie по-прежнему могут использоваться для хранения минимального количества данных, необходимых серверу для определения состояния.
Локальное и сессионные хранилища можно использовать для хранения минимального объема данных. API локального хранилища и сессионного хранилища синхронны, поэтому они влияют на рендеринг пользовательского интерфейса. Но включить API в проект несложно.
Демонстрация хранилищ браузера доступна по ссылке.