Tidbits on software development, technology, and other geeky stuff

ASP.NET Core / React SPA Template

Update - I have updated this template and wrote about it here.

A few weeks ago, I really wanted to build something new. As I tweeted, I really wanted to build something as an excuse to play with some new tools. There are so many languages, frameworks, tools out there today for building software!

Twitter Post

On the one hand, it is a bit overwhelming to keep track of all of this stuff and attempt to stay aware of it all. On the other hand, it’s tons of fun to play with different things.

Anyway, I bounced around some ideas, played with a few things and recalled my mental “I want to play with this” backlog and settled on building a SPA: ASP.NET Core on the server side for JSON/REST API and React as a web client. As I started setting up things, the application in particular quickly took a backseat to the technology stack setup itself. You know, getting the foundation laid with a skeleton/template project. That’s ok, it was fun and I learned a bunch of new things along the way. I ended up building a template project to build stuff with going forward. Here’s the repository: https://github.com/bradymholt/aspnet-core-react-template.

A few observations I had after going through the setup process:

On that last point, just look at this survey of all the tools, technologies, concepts, etc. that went into my template project. Admittedly, I didn’t have to employ all of these but I do think this is a pretty realistic modern day web stack setup.


Web / Client



Wow, that’s a lot of stuff! The end result though, is a pretty solid template to build apps with. Just about everything is baked in including asset bundling, database migrations, testings, DevOps scripts for provisioning and deployment. Also, the ASP.NET Core SpaServices support for Webpack HMR feels very productive: just fire up the server with npm start and everythng just works.


If a picture is worth a thousand words, a video is worth a million, right? Rather than walking through everything with a bunch of words and screenshots, I think a video might be best suited for showing the pieces to this template.



Discuss on Twitter