initial commit with scopes and validations