Issue #31 - July 5, 2013
Thanks as always to Chris Buckett, the editor of Dartwatch.com, for continuing to curate this newsletter. On with the links..
The popular language learning site LearnXinYminutes has Dart added to the list. 30 examples of Dart code are provided, in an easy-to-read annotated form.
Rasmus Schultz thinks again about Dart - find out why he concludes that "it's worth a look"
Save yourself from callback hell! Google's Florian Loitsch, one of the V8 engineers working on Dart, provides slides from a recent presentation about Asynchronous Dart, and shows you can use Futures to save yourself from callback hell.
Continuing the popular series of Dart tutorials, you can learn how to use IndexedDB in your Dart application - letting you store and retrieve structured data in the browser.
Lost Dart is lightweight dependency injection framework for Dart client and server applications. The latest release of Lost Dart has been redesigned and rewritten with ideas of how Dependency Injection framework should look like. The framework has become much easier to understand and use.
Dorm is an Object Relational Mapper with a client-side component. On the client, entities can be loaded, created, deleted or manipulated and in the end be sent back to the server to finalize the changes to the database itself.
Node API shims to help with porting server apps to Dart.
A screenshot showing a community member Nelson Silva's experiment with running Dart on Android. It's good to see Dart starting to appear on ARM.
The Dartlang team have created Dado, a dependency injection framework for Dart. Dado tries to make DI more lightweight by letting you define modules as Dart classes and as declaratively as possible.
Too many to list here, but Adam Singer and Gerwin Sturm have updated the Google client libraries. Highlights include adsense, analytics, calendar, drive, plus, prediction and youtube
Send mail with Dart, supporting plaintext and HTML emails, attachments, SMTP, SSL/TLS and comes pre-configured for services like GMail, Live etc.
This is a library implementing portions of Martin Folwers temporal patterns discussed in this paper: http://martinfowler.com/apsupp/recurring.pdf. It allows for simple implementations of complex recurrence events. This library can be used for calculating recurrance of appointments or events, for testing membership into a comple recurrance range, etc.
The 'webview' element allows you to embed external content (e.g. a web page) in your Chrome app. The 'iframe' element is disabled in Chrome apps, and this is its replacement. Contrary to an 'iframe', a Webview displays its content in a separate process. This provides extra security and its storage is isolated from the application. You may obtain the Webview's contentWindow and use this for bidirectional communication via postMessage.
Joseph Moniz has been busy working with Streams, and produced a number of pub packages. Combine_Latest is a stream transformer applying an aggregation operation every time one of the streams emit a new piece of data. Window_with_time creates windowed streams based on time from a stream, and Take_with_time kills the stream after a set expiry time. Check out his github repo for more stream processing libraries.