Create web apps easily
Firefly Framework is an asynchronous Java web framework that helps you create web applications quickly and easily. This development tool provides an MVC framework with an HTTP server and many other useful components for developing web apps. With this, you can easily deploy your web app without any other Java containers. The app taps into the fullest potential of hardware using SEDA architecture, which is a highly customizable thread model.
Event-driven developer kit
Firefly Framework is a largely event-driven app. You can specify things that you are interested in, and if that happens in Firefly, the app will notify you by sending you events. Among these events is the arrival of some data on a socket and an HTTP service receiving a request.
Firefly handles a lot of concurrencies using a small number of threads. With this, users are advised to not block any Firefly thread. Moreover, you must manage to block calls in the standalone thread pool.
Firefly Framework provides functionality for a variety of things—including writing TCP, HTTP, and WebSocket clients and servers. It also helps in writing web applications with MVC frameworks and template engine. Furthermore, it provides functionality for database access.
When to use Firefly
For a developer kit, the Firefly Framework is very simple. It is an HTTP framework written in Haskell that strives for simplicity in implementation. It is a nice tool for people learning Haskell, fiddling with monads, or for those who need a simple server for a project.
However, in some cases, using the Firefly Framework is not recommended. If you are a novice and are intimidated by monads, then, by all means, use the app. It is also recommended when you want to write a hobby project or you just like understanding the stack you’re working with.
But, if you have thousands of users, Firefly is not advisable. It is also not recommended if you want the most performant server. You also need to use a more advanced framework when you want to have lots of helper libs available.
Helpful but limited
All in all, the Firefly Framework is a helpful tool when you want to create web applications quickly. The app provides useful components for developing web apps and protocol servers, so you can complete your project in no time. However, what you can do with the app is limited to simple web apps only. If you are hosting an app with a lot of users, this is not the app for you.