Introduction to Single Page Apps ... with John Papa
John Papa's "Single Page Apps JumpStart " course is a great way to learn how to build SPAs (single-page applications). He takes you from zero to a multi-screen full CRUD application called Code Camper JumpStart (CCJS) explaining every step along the way.
We'd encourage you to:
- Try the CCJS live demo app that is running on Azure.
- View the Single Page Apps JumpStart course on PluralSight (requires subscription, but they have a free trial).
- Download the CCJS source code for the completed app.
- Read "What Breeze can do for you" on John's blog along with the 50+ comments from other developers.
The .NET backend is an ASP.NET web application with Web API fronting the Entity Framework and a SQL Server database. Read more about it on John's blog.
You can start your own application in this manner with the "Hot Towel NuGet package" or "Hot Towel Visual Studio Extension". John has a cool "time lapse photography" video that takes you through the process in two minutes:
But this course isn't about drag and drop. It gets behind "Hot Towel" to show you what those libraries do and how to make them work for you.
We highly recommend the course ... and a Pluralsight subscription (check out their free trial).
After taking John's "JumpStart" course, you may want to watch his intermediate course, "Single Page Apps with HTML5, Web API, Knockout and jQuery". He dives deeper into many of the subjects including the reasons for "Single Page Apps", the Web API as a SPA backend, dependency management, bundling and optimization, and "responsive design". Really good stuff.
The data layer is particularly interesting as a point of comparison. He spends a lot of time on his home-brew data layer. This version of Code Camper was developed without BreezeJS, before Breeze was released. He'd be the first to tell you that many files and hundreds of lines of code would disappear if he'd been able to use Breeze. The Code Camper JumpStart version with Breeze is more capable and more maintainable in the face of evolving requirements. The experience of writing the data layer by hand helped him choose Breeze for his second course on SPA. See what you think.