NColony helps aggregate, filter, and prioritize various sources of information. Initially, this project will support RSS feeds. But, future versions will support any source of information updates (i.e. Twitter, Facebook, Google Wave, E-mail, etc.) Developed
in .NET 4.
Covering .NET 4, MEF, Code Contracts, Prism, M-V-VM, etc.
Project High-Level, User Requirements
- Aggregate sources of reading daily information into a single location
- RSS & ATOM Feeds
Project High-Level, Technical Requirements
In support of technical requirement #1 as a learning environment for Enterprise developers, the project will begin by requiring VS2010 Professional or Ultimate with Code Contracts "Premium" Tooling from MSDN DevLabs. One could argue that the
spirit of open source is lost when support for free tooling is not provided by projects, like Visual Studio Express Edition. However, the same argument could be applied to the .NET Framework itself and the Mono project. Or, that Express requires Windows, etc.
Granted, the contributor base may be greatly limited initially, but that is a strategic decision and could "easily" be ported to a wider audience in the future.
- Be a Learning Environment for Other Enterprise Developers
- Implement an end-to-end, multi-client architecture with .NET 4
- WPF "Rich Reader"
- Silverlight in-browser reader for websites
- ASP.NET MVC reader for websites
- Microsoft Outlook reader (considering existing support for RSS feeds)
- WCF Services for readers and for distributed architectures
- Silverlight out-of-browser "Enhanced Reader"
- ASP.NET AJAX Data Templates Reader
- Utilize MEF to support a "pluggable" architecture
- Utilize Code Contracts for Contract-Driven Development
The initial sample project will be filled out to provide functionality similar to the popular "TweetDeck" application, but will focus on aggregations of news sources using MEF plug-ins for functionality. Eventually, multiple clients will be provided.
1-minute Milestone Vision:
- Clarify Project Description & Vision
- Review Project Caliburn
- Identify System Requirements for various layers of application
- Complete RSS Reader functionality through MEF using WPF as client
- Provide Documentation
- Expose Twitter Reader functionality through MEF using WPF as client
- Provide aggregation of any syndication source (RSS & Twitter above)
- Migrate to support Silverlight 4 client
Future milestone options:
- Develop a Clear value proposition for WPF vs. Silverlight Out-of-Browser
- Enhanced out-of-browser support for Silverlight
- Facebook Reader
- LinkedIn Reader
- E-mail Reader
- SharePoint List Reader and/or Discussion List Reader
- Google Wave Reader