Validation framework with some default validators.
Go to file
Stanislav Nikitin 888eaf92e1
Fix linting errors (#2).
2020-06-17 23:39:36 +05:00
example Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
validators Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
.drone.yml Bump golang versions for tests and benchmarks. 2019-12-22 02:07:08 +05:00
.gitignore Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
.golangci.yml Fix linting errors (#2). 2020-06-17 23:39:36 +05:00
LICENSE Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
README.md godoc.org link and more drone CI recipe fixes. 2019-12-03 21:31:18 +05:00
debug.go Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
errors.go Added licensing information (we're on MIT). Fixes #1. 2020-05-12 15:54:14 +05:00
go.mod Initial commit, valiwork as framework is ready to use. 2019-12-03 21:21:57 +05:00
go.sum Initial commit, valiwork as framework is ready to use. 2019-12-03 21:21:57 +05:00
validations.go Fix linting errors (#2). 2020-06-17 23:39:36 +05:00
validations_test.go Fix linting errors (#2). 2020-06-17 23:39:36 +05:00

README.md

ValiWork - validation framework

GoDoc Build Status Discord Keybase XLM

ValiWork is a validation framework that provides sane API and ability to write own validators that returns arbitrary things. It is goroutine-safe and fast.

Default validators

There are no necessity to enable default validators at all. But if you want to - call:

valiwork.InitializeDefaultValidators()

Default validators will return error.

There are no default validators ATM. Feel free to submit PR with them!

Validators registering and namespacing

Default validators using "T_N" scheme, where T is data type (string, int, int64, etc.) and N is a validator name (which can be a generic string). Please, use same naming scheme. Example good validators names:

  • string_check_for_very_rare_symbol_that_is_not_allowed
  • int64_check_if_in_bad_range
  • interface_check_if_able_to_be_TheVeryGoodStruct

Key idea is to help you debugging this thing (see debug section below).

Debug

Define VALIWORK_DEBUG environment variable and set it to true to get debug output. Default log module will be used for that.