A type based validation library for Lua and luaCATS

$ luarocks install chotto

A TypeScript Zod-inspired validation library for Lua with luaCATS force type annotations!

'Chotto' means 'a little' in Japanese (**ちょっと**).
I hope this helps you 'a little' when adding types to Lua :D

- - -

local c = require('chotto')

-- Parse and validate
local string_result = c.string().parse('hello') -- ✓ returns 'hello'
local number_result = c.number().parse('hello') -- ✗ throws error because 'hello' is not a number
local boolean_result = c.boolean().parse(true) -- ✓ returns true

-- Safe validation with pcall -- when you don't want to throw errors
local ok, result = pcall(number_schema.parse, 10)
if ok then
print('Valid:', result) -- Valid: 10
else
print('Error:', result) -- Error message
end

Versions

main-1760 days ago8 downloads
main-16205 days ago19 downloads
main-15228 days ago8 downloads
main-14229 days ago4 downloads
main-13229 days ago5 downloads
main-12229 days ago6 downloads
main-11229 days ago5 downloads
main-10229 days ago5 downloads
main-8229 days ago5 downloads
main-7229 days ago6 downloads
main-6229 days ago5 downloads
main-5229 days ago5 downloads
main-4235 days ago7 downloads
main-3235 days ago6 downloads
main-2235 days ago5 downloads

Labels

Manifests