This demo replicates the experience on google when searching for inches to centimeters.

Inches to centimeters have a ratio of 1 inch to 2.54 centimeters. The rules are set up with conditions so that if you modify the centimeters input, then the inches input value is updated, and if the inches input is updated then the centimeters input value is updated.

I added some custom CSS for the layout of the form as well as hide the submit button.

There are form builders that can do validation for a particular field - that a text input is less than 100 characters long, that a number is greater than zero, etc. However it's impossible to validate an input conditionally, i.e. if the shipping address is not the same as billing then make sure the billing address is not blank.

The conditional validation for this form is on a follow up question. If you answer the first question from the survey "How did you hear about keenforms?" with the option "other", then another input appears. The input is conditionally validated, and the form cannot be submitted IF the first input is set to other AND the question "Describe 'other'" is blank. This is called a **conditional validation**. I have yet to find a form builder that is capable of doing conditional validation.

There are lots of mortgage calculators online. At some point I wanted to see if it was possbile to build one using another form builder, but was ultimately unsuccessful. Many form builders allow for calculated fields. However calculating a monthly mortgage payment requires a higher degree of precision than what was available.

So I decided that keenforms would be capable of doing just that. The formula for calculating a monthly mortgage payment can be found here. There are a few value setting rules that break the calculation into small parts. One rule calculates the monthly interest rate from the yearly interest rate. Another rule calculates the number of payments by multiplying the years * 12. A rules engine makes that possible.