Tips for building Large-Scale rich Web sites and applications
Posted by Igor Moochnick on 06/09/2012
When you’re building a workflow-rich web site or application, you’re in a danger to get buried under piles of entangled JavaScript code, web pages, styles and other related artifacts.
It’s better to follow the best practices from the beginning to reduce the weight of the complexity and enable easy extensibility of your code. Here are a couple of links that may put you on a good path:
- Patterns For Large-Scale JavaScript Application Architecture
- Code and Slides: Techniques, Strategies, and Patterns for Structuring JavaScript Code
- Backbone.js Patterns
- Introduction To Composite JavaScript Apps
- Organizing your application using Modules (require.js)
- Organizing Your Backbone.js Application With Modules
- Learning JavaScript Design Patterns (book)
- Yet Another Podcast #64 – Building Single Page Javascript Applications
- References, Routing, And The Event Aggregator: Coordinating Views In Backbone.js
Here is an entry list of frameworks to know about:
- jQuery – you HAVE to know this
- Backbone.js – composition, navigation, templating, routing, history
- Knockout.js – data binding
- JsRender – templating
- toastr – display toast popups
- Sammy.js – routing
- SignalR – async signaling library
- require.js – file and module loader
- Amplify.js – communication, store, pub/sub
- JSMock – mock library
- mockJSON – JSON mock library
- JsUnit – guess what …
I’m not afraid to admit that I’m not a web designer and I struggle with building good-looking sites, but there are a couple of tricks that I use to make sure that I’m not stuck:
Tips for VisualStudio–devoted crowd:
- CoffeeScript, Sass and LESS support for Visual Studio and ASP.NET with the Mindscape Web Workbench
- NuGet: SassAndCoffee
- Mindscape Web Workbench Visual Studio extension
UPDATE:
Here are a couple of more helpful ones:
- async.js - Async utilities for node and the browser




Igor Moochnick said
Check out Dan Wahlin’s post “JavaScript Data Binding Frameworks” where he talks about different data biding frameworks – http://weblogs.asp.net/dwahlin/archive/2012/07/08/javascript-data-binding-frameworks.aspx
Igor Moochnick said
Interesting article comparing different MVx frameworks for SPA – Rich JavaScript Applications – the Seven Frameworks (Throne of JS, 2012) [http://blog.stevensanderson.com/2012/08/01/rich-javascript-applications-the-seven-frameworks-throne-of-js-2012/]
Igor Moochnick said
Great resource for using Backbone.js – http://addyosmani.github.com/backbone-fundamentals/