February 27, 2008

MindTouch Dream is a .Net library for REST-oriented programming. It ships with a REST micro-server for Windows and Linux (thanks to Mono) that can be embedded into applications or used as a standalone .Net REST web-server. Dream is open source, written in C#, and licensed under LGPL. You can download Dream “Emerald” 1.5.0 from SourceForge.net.

Dream “Emerald” is the follow-up version to “Denim” which shipped last September. Since then, we’ve done many improvements to this versatile library and server. The mission of Dream is to make REST-oriented programming as simple as possible without introducing abstractions that obfuscate the versatility of HTTP. Dream includes classes such as Plug and XUri that make the WebRequest and Uri/UriBuilder classes obsolete. They promote better programming practices and require less lines of code. Similarly, the XDoc class is a generalization of XmlDocument, XmlNode, and XmlNodeList that streamlines direct operations on XML documents, alleviating the need for generated wrapper classes.

Dream also provides a concurrency and asynchronous execution library that enables efficient programming. Most of the complexity is encapsulated through the versatile Result class, which acts as synchronization point for future results.

Dream includes a REST micro-server that can act as a standalone host or embedded into applications to provide a REST API.

Improvements in Dream “Emerald” include:

  • performance tuning
  • memory footprint tuning
  • simpler instantiation of the host service
  • XDoc diffing and 3-way merge
  • catch handlers for asynchronous operations
  • eliminated all uses of NameValueCollection (it’s slow, a memory hog, and buggy)
  • support for independent culture per request for multi-lingual services
  • much improved support for instantiating objects from a database catalog
  • and many more…

Dream is robust and well tested as it lies at the heart of Deki Wiki, the most popular vendor-backed wiki platform.

Let us know about your Dream projects on our our forums!

1 Comment »

  1. [...] Dream, the foundational technology of MindTouch Deki Wiki also has a new major release named: “Emerald”. This is the follow-up version to “Denim” which shipped last September. Since then, we’ve done many improvements to this versatile library and REST micro-server. Dream greatly simplifies REST-oriented programming without introducing abstractions that obfuscate the versatility of HTTP. Dream includes classes such as Plug and XUri that make the WebRequest and Uri/UriBuilder classes obsolete. Dream promotes better programming practices and requires significantly less lines of code. Similarly, the XDoc class is a generalization of XmlDocument, XmlNode, and XmlNodeList that streamlines direct operations on XML documents, alleviating the need for generated wrapper classes. To learn more about MindTouch Dream and the architecture of MindTouch Deki Wiki visit our technology page. Or you can read the Dream "Emerald" release notes. [...]

    Pingback by MindTouch March Newsletter | MindTouch Blog — March 18, 2008 @ 8:45 am

RSS feed for comments on this post. TrackBack URL

Leave a comment