Verily Framework

Let's make the web more reasonable.

Verily is a web framework for Java that supports the development of verifiable web applications. Rather than requiring that programs be verified in separate a posteriori analysis, Verily supports construction via a series of Recipes, which are properties of an application that are enforced at compile time.

Download Verily (Windows, Mac, and Linux)

Download IntelliJ Plugin

Verily is a product of the Formal Methods Lab at the University of Central Florida and its development has been supported by the US National Science Foundation under grant 1228695.

Say Goodbye to Session Management Problems

Verily's Global Mutable State Recipe will make errors arising from improperly managing session a thing of the past.

Easy Parameter Validation

Stop wasting time parsing requests. Verily automates the process of getting input from the browser and transforming it into meaningful program representations.

Develop Freely

Verily supports development in an IDE or simple text editors. All Verily projects are managed by Maven, so using Verily doesn't require you to switch religions. If you're the IDE type we provide a IntelliJ plugin to help you get started.

Single Page Applications are a Snap

Verily's design recognizes that interfacing single page applications with server-side frameworks can be a headache. In Verily, you can easily connect your JavaScript application to server-side code without resorting to solutions like Node.js.

Static Checking and Contract-Based Programming Everywhere

Want to write verified applications but don't want have to go get a PhD first? Verily seamlessly integrates sophisticated program verification tools like SMT solvers, Design by Contract-based programming facilities, Extended Static Checking as well as Runtime Assertion Checking. No dissertation required.

Client, Server, One Interface

In Verily, server side methods are automatically exported to JavaScript. This enables you to call server side methods as if they were written natively in JavaScript.