Input Validation Demo

Try out the schema-based validation system

User Registration Form

3-20 chars, letters, numbers, underscores

Minimum 8 characters

Must be 13-150

Validation Schema

The form above is validated against this schema:

let schema = {
    "username": V.string().required()
        .min_length(3)
        .max_length(20)
        .pattern(r"^[a-zA-Z0-9_]+$"),
    "email": V.string().required().email(),
    "password": V.string().required()
        .min_length(8),
    "age": V.int().optional()
        .min(13).max(150),
    "website": V.string().optional().url(),
    "role": V.string().optional()
        .one_of(["admin", "user", "guest"])
};

let result = validate(data, schema);