Single Page Web Applications: JavaScript end-to-end