Short and descriptive examples for the Anvil MVC framework
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
anim-picker
countdone
counter
currency
databinding-kotlin
databinding
empty
fragments
gradle/wrapper
hello updated anvil; disabled lint strict mode Mar 22, 2016
login
todo-java8
todo-kotlin
todo
.gitignore
LICENSE
README.md
gradlew
gradlew.bat
settings.gradle

README.md

Anvil samples

Anvil is a tiny reactive UI library for Android. Inspired by React and Mithril, it brings declarative data binding, unidirectional data flow and componentization and other things that would make your code look cleaner and easier to maintain.

This repository contains small examples of how Anvil can be used.

Example projects

  • Hello - simple static layout with a classical text message
    • how to start Anvil project
    • how to write layouts without XML
  • Counter - simple click counter
    • how to bind variables to views
    • how to bind event listeners to views
    • how easy is to to keep UI in sync with data (automatic rendering)
  • Login form - two input fields, push button and some logic behind them
    • how to use text watcher bindings
    • how to use Java 8 method references as event bindings
  • Item picker - animated item picker component with next/prev buttons
    • how to use animations
    • how to use states
    • how to use currentView() to get access to the real View object
    • how to use Java8 lambdas in Anvil
  • Currency exchange app - fetches latest currency rates from the backend, calculates converted values as you type.
    • how to separate model logic from the view logic
    • how to separate view styling from view hierarchy
    • how to bind adapters
    • how to get two-directional data binding for text input
  • Countdone clone (current Anvil example) - pomodoro-like app: define how long the task should take and see if you finish it in time
    • how to use backstack having just one activity
    • how to save component state
    • how to use custom fonts and icon fonts
  • Todo app - classical MVC example: add tasks, check tasks, remove checked tasks