All client side at the moment, but it will probably need a bit of backend code, to circumvent CORS problems in the browser.