Inbuilt routing
<header>Routing<header>
<main>
<h3>VTML can be</h3>
<v-index>
Great
</v-index>
<v-page path="/speed" >
Quick
</v-page>
<v-page path="/readability" >
Simple
</v-page>
</main>
Create simple routing structures with ease.
Automatic form endpoints
<form v-name="say hi" action="/sayhi" >
<input
name="message"
type="text"
maxlength=128
required
/>
<v-action>
<v-nodejs>
console.log($.body.message)
</v-nodejs>
</v-action>
</form>
Server-side validation is generated from form inputs. Define the interaction once and
let VTML take care of the REST.
Component isolation
<v-nodejs target=$not_important >
return "Trivial data"
</v-nodejs>
<v-nodejs target=$important >
return "Important data"
</v-nodejs>
<v-portal>
<p>I only need $important</p>
</v-portal>
Forms, pages and portals can all be isolated and rendered independently
of the rest of the page. VTML can determine which tags need to be executed
to produce only the parts of the page you need.
Declarative asynchronous templating
<v-sql>
select lotsof, data from very_big_table;
</v-sql>
<v-nodejs>
return fetch("https://very.slow/api")
</v-nodejs>
<v-include src="./more/massive/stuff.vtml" />
The VTML reference engine can detect the optimum order of component execution
to deliver lightning fast load times.