Immerse yourself in SPA development with this multi-part tutorial. Implement your own SPA that leads you through project setup, component mapping, front-end development tools, and application routing.
For an end-to-end example of building your own single-page application that is editable with AEM starting with project setup through application routing, see the WKND SPA Tutorials:
Before you begin your own SPA project for AEM however, be sure to also review the Developing SPAs for AEM document.