Recently we released MacWire 2.0, with a number of new features and general code cleanup. The majority of the work was done by Bruno Bieth – thanks! If you don’t know what MacWire is: a lightweight and non-intrusive Scala dependency injection library, and in many cases a replacement for DI…
Category: Library
When & why to use Supler for web forms?
If you haven’t yet heard about Supler, it’s a Rapid Form Development library, working with your favorite Javascript frontend and Scala backend frameworks. It keeps the form definition centralized, taking care of client/server-side validation, form rendering, applying new values and serializing/deserializing. Star Supler on GitHub if you think that might…
MacWire 1.0 is here!
A couple of days ago MacWire 1.0 was released! If you don’t yet know what MacWire is: a light-weight and non-intrusive Scala Dependency Injection library. In fact, it’s more of an approach to DI (see the step-by-step guide), than a library. Another good thing – it’s definitely not a framework…
Supler update: 0.3.0 release
It’s been some time since the last release of Supler. Just as a short reminder: Supler is a Rapid Form Development library, allowing you to use your favorite Javascript frontend, and Scala backend frameworks. It keeps the form definition centralized, taking care of client/server-side validation, form rendering, applying new values…
Quicklens: traversing options and lists
Quicklens is a small library which allows to modify deeply nested fields in case classes e.g.: modify(person)(_.address.street.name).using(_.toUpperCase), without the need to create dedicated lens objects. I got some very good feedback on the initial release – thanks! There’s also a spin-off implementation, using a different syntax. One problem that I…
Quicklens: modify deeply nested case class fields
TL;DR: Quicklens: modify deeply nested fields in case classes, e.g.: modify(person)(_.address.street.name).using(_.toUpperCase). Similar to lenses, but without the actual lens creation. Lenses are very useful when you have to update a deeply nested field in a hierarchy of case classes. For example if we have: 1 2 3 4 5 case…
Supler 0.2.0: docs and features added, bugs removed
Supler is a library which makes writing complex forms easier. It has a server-side (Scala) and a client-side (JavaScript) component. In December we announced the 0.1.0 release, so it’s about time for an update! The biggest improvement for Supler uses will probably be the brand new documentation. We now have…
MacWire 0.8.0: towards 1.0, tagging, anonymous functions support
A couple of days ago MacWire 0.8.0 got released. It contains a couple of changes and new features. But first, I’d like to thank Marcin Kubala for his contributions. All of the changes are reflected in the guide to DI in Scala. Tags/qualifiers If you have multiple objects of the…
Supler 0.1.0: complex forms made easier
Supler aims to make complex web forms development easier, without tying you to a web framework. Supler provides a server-side DSL for defining forms, generating a JSON form representation, applying values received from the client, validating and running actions. It also provides a front-end renderer for the forms, client-side validation,…
Clustering reactmq with akka-cluster
In the last two posts on reactmq, I described how to write a reactive, persistent message queue. The queue has the following characteristics: there is a single broker storing the messages, with potentially multiple clients, either sending or receiving messages provides at-least-once-delivery; receiving a message blocks the message; unless it…