Server-side and Client-side validation made easy