Denver
450 Lincoln Street, #101
Denver, CO 80203
303.798.5458
Colorado Springs
118 N. Tejon Street, #200
Colorado Springs, CO 80903
719.445.1138
www.aspenware.com
@aspenware (twitter)
contactus@aspenware.com
Playing Nice with the
MEAN Stack
By Leila Adams
@thatgirlcancode
agenda
• What is MEAN
• Why use it
• Tools
• Demo
• vNext
2Aspenware
what is MEAN?
Aspenware
4Aspenware
Microsoft MEAN
C# JavaScript
Views & Razor Vash
ASP.NET MVC & Web API Express
IIS Node.exe
SQL Server MongoDB / Edge.js + SQL Server
SQL JavaScript
Entity Framework Mongoose
Nuget Package Manager Node Package Manager / Bower
MSBuild Grunt
MSTest / NUnit Mocha / Jasmine
SignalR Socket I/O
associations
why use MEAN?
• High concurrency
• Real-time solution
• Minimal configuration; rapid prototyping
• No build/compile time
• Fetching lots of data
• Not doing a lot of CPU intensive stuff
• General purpose
5Aspenware
tools
• Node.exe
• Node.js Tools for Visual Studio
• TypeScript
6Aspenware
demo
• Node.js Tools
• NPM
• Express
• Vash
• Private module
• Real project
• MongoDB
7Aspenware
8Aspenware
Angular Controller
homeController.js
Angular Service
vendorService.js
View
Index.vash
Node Api Controller
vendorsApiController.js
MongoDB
database.js & vendors.js
Node Business
vendorBusiness.js
9Aspenware
Current .NET MEAN vNext
C# JavaScript C#
Views & Razor Vash Views & Razor
ASP.NET MVC & Web API Express ASP.NET MVC 6
IIS Node.exe IIS
Entity Framework Mongoose Entity Framework
Nuget Pkg Manager Node Pkg Manager / Bower Nuget Pkg Manager / KPM
Packages.config Package.json Project.json
MSBuild Grunt Roslyn
more associations
resources
• http://www.asp.net/vnext/overview/aspnet-vnext
• http://blogs.msdn.com/b/dotnet/archive/2014/05/12/the-next-generation-of-net-asp-net-vnext.aspx
• http://pluralsight.com
• Node.js for .NET Developer by Shawn Wildermuth
• Introduction to MongoDB by Nuri Halperin
• Building AngularJS & Node.js Apps with the MEAN Stack by Joe Eames
• 092 JavaScript Jabber: The MEAN Stack with Ward Bell & Valeri Karpov
• Express Web Application Development by Hage Yaapa
• NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence by Sadalage & Fowler
• Channel 9: ASP.NET vNext 101 with Damian Edwards and David Fowler
• http://blogs.msdn.com/b/webdev/archive/2014/06/17/dependency-injection-in-asp-net-vnext.aspx
• http://www.joyent.com/blog/joyent-partners-with-ms-to-port-node-js-to-windows
• http://www.hanselman.com/blog/InstallingAndRunningNodejsApplicationsWithinIISOnWindowsAreYouMad.aspx
Special thanks to @elylucas and @mike_filbin
10Aspenware

Playing nice with the MEAN stack

  • 1.
    Denver 450 Lincoln Street,#101 Denver, CO 80203 303.798.5458 Colorado Springs 118 N. Tejon Street, #200 Colorado Springs, CO 80903 719.445.1138 www.aspenware.com @aspenware (twitter) contactus@aspenware.com Playing Nice with the MEAN Stack By Leila Adams @thatgirlcancode
  • 2.
    agenda • What isMEAN • Why use it • Tools • Demo • vNext 2Aspenware
  • 3.
  • 4.
    4Aspenware Microsoft MEAN C# JavaScript Views& Razor Vash ASP.NET MVC & Web API Express IIS Node.exe SQL Server MongoDB / Edge.js + SQL Server SQL JavaScript Entity Framework Mongoose Nuget Package Manager Node Package Manager / Bower MSBuild Grunt MSTest / NUnit Mocha / Jasmine SignalR Socket I/O associations
  • 5.
    why use MEAN? •High concurrency • Real-time solution • Minimal configuration; rapid prototyping • No build/compile time • Fetching lots of data • Not doing a lot of CPU intensive stuff • General purpose 5Aspenware
  • 6.
    tools • Node.exe • Node.jsTools for Visual Studio • TypeScript 6Aspenware
  • 7.
    demo • Node.js Tools •NPM • Express • Vash • Private module • Real project • MongoDB 7Aspenware
  • 8.
    8Aspenware Angular Controller homeController.js Angular Service vendorService.js View Index.vash NodeApi Controller vendorsApiController.js MongoDB database.js & vendors.js Node Business vendorBusiness.js
  • 9.
    9Aspenware Current .NET MEANvNext C# JavaScript C# Views & Razor Vash Views & Razor ASP.NET MVC & Web API Express ASP.NET MVC 6 IIS Node.exe IIS Entity Framework Mongoose Entity Framework Nuget Pkg Manager Node Pkg Manager / Bower Nuget Pkg Manager / KPM Packages.config Package.json Project.json MSBuild Grunt Roslyn more associations
  • 10.
    resources • http://www.asp.net/vnext/overview/aspnet-vnext • http://blogs.msdn.com/b/dotnet/archive/2014/05/12/the-next-generation-of-net-asp-net-vnext.aspx •http://pluralsight.com • Node.js for .NET Developer by Shawn Wildermuth • Introduction to MongoDB by Nuri Halperin • Building AngularJS & Node.js Apps with the MEAN Stack by Joe Eames • 092 JavaScript Jabber: The MEAN Stack with Ward Bell & Valeri Karpov • Express Web Application Development by Hage Yaapa • NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence by Sadalage & Fowler • Channel 9: ASP.NET vNext 101 with Damian Edwards and David Fowler • http://blogs.msdn.com/b/webdev/archive/2014/06/17/dependency-injection-in-asp-net-vnext.aspx • http://www.joyent.com/blog/joyent-partners-with-ms-to-port-node-js-to-windows • http://www.hanselman.com/blog/InstallingAndRunningNodejsApplicationsWithinIISOnWindowsAreYouMad.aspx Special thanks to @elylucas and @mike_filbin 10Aspenware