Needs PHP 7.1 or later (any production PHP version)
Client has to support ES6 (all browsers except IE)
This example doesn't implement any security as this is not the scope of this. For example data and cache are freely accessible through the Internet.
Data retrieval from json file is very slow. To optimise this, use SQL database for data storage.
Create your own API keys at https://console.cloud.google.com/apis/credentials Keys in code are using free tier and may stop working at any moment.