Raddish: Node.js Framework with Support for Threads and Sockets
Jasper van Rijbroek has released Raddish, a new Node.js framework claiming "ridiculous speeds," that comes with out of the box support for threads and sockets.
According to its own notes, Raddish aims to be "amazingly fast." Dutch web engineer van Rijbroek told InfoQ that he wants Raddish to be easy to use and fun for programming, and that by using a fallback system Raddish allows developers to write less code to reach their goals.
The Raddish project started when van Rijbroek and his colleague were looking for a framework in Node.js that had a lot of support out-of-the-box, similar to PHP frameworks like Nooku. Because such a framework didn’t exist at the time the idea to create Raddish was born. Van Rijbroem says he was very eager to learn about design patterns, architectural designs, and how the Node.js event loop could be used.
Although the project has suffered from some minor setbacks, and van Rijbroek's colleague is no longer involved, the 1.0 release is a milestone in the project's history.
With new frameworks appearing almost every week, it can sometimes be difficult for developers to notice, let alone distinguish between, them. Van Rijbroek says:
The most notable thing about Raddish is the speed, and that you don’t have to write overrides when none are needed. I have seen unneeded overrides countless times in PHP frameworks.
What this means for developers is that less time is required for them to develop an application or a component. Also, by making use of identifiers, developers can easily call a function that they have written before, using the DRY (Don’t Repeat Yourself) principle.
Van Rijbroek says he hasn't seen another fast and complete framework in Node.js that has out of the box support for threads and sockets. With the built-in threads handler in Raddish, van Rijbroek says developers don’t have to do all the work creating their own threads solution.
Raddish's target audience are developers making a mobile app, or a website using the same data, but developers creating a web API are encouraged to look for another framework better suited to their needs.
The most important features in Raddish's first stable release are:
- Socket.IO integration, allowing developers to create real time applications. Because this is supported out-of-the-box there is only a behaviour that has to be added
- Behavior Config, useful when a developer wants to have more control over a behavior they have made. The developer can add certain config variables to the behaviour to make it more flexible and reusable
To date, van Rijbroek says he has tried to keep the release of Raddish fairly quiet and is in the process of slowly releasing it to the community. In the LinkedIn discussion Another (rad) nodejs framework the framework has so far prompted positive feedback from users on its code structure and speed.
Raddish's release notes say the focus from here will be on the 2.0 major release. Raddish is available from Github and NPM under a GPLv3 license, InfoQ readers are encouraged to contribute to the project in any way they can.