Main Page

From LiftWiki

Jump to: navigation, search

The official wiki of lift, the Scala web framework.

Contents

Welcome to Lift

Lift is an expressive and elegant framework for writing web applications. Lift stresses the importance of security, maintainability, scalability and performance, while allowing for high levels of developer productivity. Lift open source software licensed under an Apache 2.0 license.

See a Demo

Lift borrows from the best of existing frameworks, providing

  • Seaside's highly granular sessions and security
  • Rails fast flash-to-bang
  • Django's "more than just CRUD is included"
  • Wicket's designer-friendly templating style (see Lift View First)

And because Lift applications are written in Scala, an elegant new JVM language, you can still use your favorite Java libraries and deploy to your favorite Servlet Container. Use the code you've already written and deploy to the container you've already configured!

Familiar Java Environment

Lift application development is a lot like Java development. Lift applications are packaged as WAR files and deployed on any Servlet 2.4 engine (e.g., Tomcat 5.5.xx, Jetty 6.0, etc.) Lift programmers use standard Java environments like Eclipse and IDEA. Dynamic content can be authored using standard xhtml editors. Lift applications benefit from the performance and portability of the JVM, the Java development toolchain, and the extensive collection of available Java libraries.

Scala

Scala is an elegant modern relative of Java and Haskell that is rapidly growing in popularity. Scala programs run on the JVM and can freely intermix with existing Java code and libraries. Scala also adds powerful new features such as:

  • mixin inheritance
  • lightweight actors
  • first class functions
  • a uniform object model

Scala programs are typically about one quarter the size of equivalent Java programs and contain significantly fewer defects. Scala's improved syntax and type inferencing eliminate unnecessary repetition and Scala's advanced abstraction features enable writing simpler programs.

Advanced Framework

Lift has a number of great features for web developers. Many inspired from existing frameworks like Seaside, Rails, Django, TurboGears, and Wicket:

  • Comet support is easy to add and scalable
  • Mapping between databases and code is easy (Rails)
  • Content and code are well separated (Wicket, TurboGears)
  • Forms are secure by default (Seaside)
  • Convention over configuration is emphasized, no xml hell (Rails)
  • Component model makes pages elements easier to create and maintain (Wicket)
  • Prebuilt classes are provided for standard functions, e.g. User (Django)
  • Semantic information carries from model to enable smart display. e.g. postal code, social security number, email address
  • State machine support for model objects, including timeouts. e.g. after 3 days w/o confirmation, delete this new account
  • Site Map provides site wide navigation and access control support

Getting Started

Do you want a download? That's so last millennium. (It appears the main way to get things going is to use Maven a la HowTo start a new liftwebapp.)

You can check out the lift source or browse different releases

Links

  • The Maven generated lift' sites : last release(stable), last snapshots(unstable).
    Some moderately useful information (test coverage,...) for those interested in the development of lift. Automatically generated by maven from the lift sources.
  • 0.3.0 Release Champagne

Community

Lift is an open source community effort and therefore would not be possible without help from people like you. Join the liftweb google group and help contribute to the Lift community.

Scala Lift Off Unconference

Scala lift off is a great place for members of the Scala and lift communities to get together, learn about Scala, learn about lift and get to know each other face to face. There will be Scala tracks going all day long and lift tracks to suits everyone's interests.

You can find out more information at the lift-built website, http://scalaliftoff.com.

Feature Requests

Need a feature, want something added to lift? Put it on Feature Requests

Unified (client & server side) Validation -- Unified Validation

What we need for lift 1.1 -- The Lift 1.1 Google Group discussion

Special Thanks

Folks who have contributed software to the lift project:

  • Install4J
  • Your Kit is kindly supporting open source projects with its full-featured Java Profiler. Your Kit, LLC is creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at Your Kit's leading software products: YourKit Java Profiler and YourKit .NET Profiler.
Personal tools
search|search