Тут надо десктопное приложение делать.
Даже если вы каким-то образом сможете положить всю базу в local storage (5МБ), юзер не сможет работать с local storage в оффлайне.
Либо можно предлагать скачать «оффлайновую копию» сайта, в которой будет статичный html с заинлайненным javascript и вшитой базой в виде json.
Попробуйте indexedDB, там с лимитами получше, храните не все, а только нужные кусочки.
Какие-то запросы можно отдавать с большим временем жизни и тогда в следующий раз они возьмутся из кеша. Много чего можно сделать :)