Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 

README.md

GWT Xtend TodoMVC

This implementation of the TodoMVC app uses GWT and Xtend. It has a backend running on the Google App Engine that is used to load and store your todos.

Try the app at http://1-dot-todomvc.appspot.com.

Why GWT?

GWT allows you to use Java and all your tools and infrastructure for the client and for the server side. Using its widget library you can also abstract a bit from the DOM and browsers differences.

Why Xtend?

For the client side you frequently have to specify callbacks. Those can be pretty verbose in Java. Xtend has a very noise-less syntax for the same thing to specify. Additionally, a lot of boiler plate code can be saved by using Xtends cool new 'Active Annotations'.

Code Samples

List processing

// filter out todos that are done
todos = todos.filter[!done].toList

// mark all todos as completed
todos.forEach[done = true]

UI Builder

  flowPanel [
	styleName = 'view'
	checkBox = checkBox [
		styleName = 'toggle'
		onClick [
			todo.done = !todo.done
			updateView
			updateTodo.apply(todo)
		]
	]
	label = label [
		onDoubleClick [
			editMode
		]
	]
	button [
		styleName = 'destroy'
		onClick [
			deleteTodo.apply(todo)
		]
	]
]

About

No description, website, or topics provided.

Resources

Releases

No releases published
You can’t perform that action at this time.