1 | # Sample applications |
---|
2 | |
---|
3 | The Play 2.0 package comes with a comprehensive set of sample applications written in both Java and Scala. This is a very good place to look for code snippets and examples. |
---|
4 | |
---|
5 | > The sample applications are available in the `samples/` directory of your Play installation. |
---|
6 | |
---|
7 | ## Hello world |
---|
8 | |
---|
9 | [[images/helloworld.png]] |
---|
10 | |
---|
11 | This is a very basic application that demonstrates Play 2.0 fundamentals: |
---|
12 | |
---|
13 | - Writing controllers and actions. |
---|
14 | - Routing and reverse routing. |
---|
15 | - Linking to public assets. |
---|
16 | - Using the template engine. |
---|
17 | - Handling forms with validation. |
---|
18 | |
---|
19 | ## Computer database |
---|
20 | |
---|
21 | [[images/computerdatabase.png]] |
---|
22 | |
---|
23 | This is a classic CRUD application, backed by a JDBC database. It demonstrates: |
---|
24 | |
---|
25 | - accessing a JDBC database, using Ebean in Java and Anorm in Scala |
---|
26 | - table pagination and CRUD forms |
---|
27 | - integrating with a CSS framework ([[Twitter Bootstrap | http://twitter.github.com/bootstrap/]]). |
---|
28 | |
---|
29 | Twitter Bootstrap requires a different form layout to the default layout provided by the Play 2.0 form helper, so this application also provides an example of integrating a custom form input constructor. |
---|
30 | |
---|
31 | ## Forms |
---|
32 | |
---|
33 | [[images/forms.png]] |
---|
34 | |
---|
35 | This is a dummy application presenting several typical form usages. It demonstrates: |
---|
36 | |
---|
37 | - writing complex forms with validation |
---|
38 | - handling forms with dynamically repeated values. |
---|
39 | |
---|
40 | ## ZenTasks |
---|
41 | |
---|
42 | [[images/zentask.png]] |
---|
43 | |
---|
44 | This advanced todo list demonstrates a modern Ajax-based web application. This is a work in progress, and we plan to add features in the future releases. For now you can check it out to learn how to: |
---|
45 | |
---|
46 | - integrate authentication and security |
---|
47 | - use Ajax and JavaScript reverse routing |
---|
48 | - integrate with compiled assets - LESS CSS and CoffeeScript. |
---|
49 | |
---|
50 | ## CometClock |
---|
51 | |
---|
52 | [[images/comet-clock.png]] |
---|
53 | |
---|
54 | This a very simple Comet demonstration pushing clock events from the server to the Web browser using a the forever-frame technique. It demonstrates how to: |
---|
55 | |
---|
56 | - create a Comet connection |
---|
57 | - use Akka actors (in the Java version) |
---|
58 | - write custom Enumerators (in the Scala version). |
---|
59 | |
---|
60 | ## WebSocket chat |
---|
61 | |
---|
62 | [[images/websocket-chat.png]] |
---|
63 | |
---|
64 | This application is a chat room, built using WebSockets. Additionally, there is a bot used that talks in the same chat room. It demonstrates: |
---|
65 | |
---|
66 | - WebSocket connections |
---|
67 | - advanced Akka usage. |
---|
68 | |
---|
69 | ## Comet monitoring |
---|
70 | |
---|
71 | [[images/rps-screenshot.png]] |
---|
72 | |
---|
73 | This mobile web application monitors Play server performance. It demonstrates: |
---|
74 | |
---|
75 | - advanced usage of Enumerators and Enumeratees. |
---|
76 | |
---|
77 | ---- |
---|
78 | |
---|
79 | > **Next:** |
---|
80 | > |
---|
81 | > â [[Play 2.0 for Scala developers | ScalaHome]] |
---|
82 | > â [[Play 2.0 for Java developers | JavaHome]] |
---|