Search code examples
scalalift

What type of webapp is the sweet spot for Scala's Lift framework?


What kind of applications are the sweet spot for Scala's lift web framework.

My requirements:

  1. Ease of development and maintainability
  2. Ready for production purposes. i.e. good active online community, regular patches and updates for security and performance fixes etc.
  3. Framework should survive a few years. I don't want to write a app in a framework for which no updates/patches are available after 1 year.
  4. Has good UI templating engines
  5. Interoperation with Java (Scala satisfies this arleady. Just mentioning here for completeness sake)
  6. Good component oriented development.
  7. Time required to develop should be proportion to the complexity of web application.
  8. Should not be totally configuration based. I hate it when code gets automatically generated for me and does all sorts of magic under the hood. That is a debugging nightmare.
  9. Amount of Lift knowledge required to develop a webapp should be proportional to the complexity of the web application. i.e I should't have to spend 10+ hours learning Lift just to develop a simple TODO application. (I have knowledge of Databases, Scala)

Does Lift satisfy these requirements?


Solution

  • IMHO, Lift meet those requirements. Not so sure about #4, though, on the other hand, it has a good collection of back ends to interact with other services.

    I think it mostly hinges on complexity. Lift does things its own way, which you may get easily, or you may not. I'd take a day to write that TODO application -- and be sure to make use of the liftweb group, as there just aren't many Lifters on Stack Overflow -- and see how that goes. I think you'll be able to form an opinion on it -- just a day.