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-1766 days ago9 downloads
main-16211 days ago19 downloads
main-15233 days ago8 downloads
main-14235 days ago4 downloads
main-13235 days ago5 downloads
main-12235 days ago6 downloads
main-11235 days ago5 downloads
main-10235 days ago5 downloads
main-8235 days ago5 downloads
main-7235 days ago6 downloads
main-6235 days ago5 downloads
main-5235 days ago5 downloads
main-4240 days ago7 downloads
main-3241 days ago6 downloads
main-2241 days ago5 downloads

Labels

Manifests