"I'd really like to see what sort of organisation I should be aiming for in my projects"
Tutorials are great but they’re not the only way to learn a new technology.
If you’re trying to learn using tutorials alone you’ll find that a lot of them are either too shallow and skip over important subjects or they go into massive detail and leave you scratching your head wondering how much of it you actually need to get started.
Tutorials can be great for getting started with a new technology (e.g. ASP.NET Core) but often the best way to learn is by looking at real projects. It really helps to see how the technology works when applied to a meatier problem.
When you start looking at other projects your brain identifies puzzles for you to solve. You’ll find you start asking questions. How did they render that on the screen? How does the controller get its data? How many controllers do they need for this app?
It’s in solving these puzzles that you’ll learn the most.
.NET Core in the wild
So where can you find .NET Core projects to learn from?
Github is always a good place to start. Here are a few examples to get you going.
I stumbled upon this one recently. It’s an interesting project to build an ASP.NET Core Content Management System.
I especially like that they’re using Domain Driven Design and Command Query Separation. These are quite advanced concepts if you’re just starting out but it’s useful to see an example of these concepts in an app built on .NET Core.
Humanitarian Toolbox: AllReady
If you haven’t heard of it before HTBox is a charitable organisation. They leverage technology and skilled volunteers to create projects that help response organisations and communities affected by disasters.
AllReady is designed to bring together community members, volunteers and organisations as they undertake various preparedness activities to help lessen the impact of disasters on families and communities.
It’s a worthy cause and a great project to contribute to if you have any spare time. Failing that it’s also a real-world example of a .NET Core app so well worth checking out.
Shawn Wildermuth’s blog
Shawn has a load of courses on Pluralsight and is a many-times Microsoft MVP.
He’s built his blog using .NET Core and Angular 2 and released the source on Github.
Be advised, he makes it quite clear that the project wasn’t built to be a general blogging engine or to be easy for re-use by anyone else. Nevertheless it’s a useful example of another real-world application.