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-1781 days ago9 downloads
main-16226 days ago19 downloads
main-15248 days ago8 downloads
main-14249 days ago4 downloads
main-13249 days ago5 downloads
main-12249 days ago6 downloads
main-11249 days ago5 downloads
main-10249 days ago5 downloads
main-8250 days ago5 downloads
main-7250 days ago6 downloads
main-6250 days ago5 downloads
main-5250 days ago5 downloads
main-4255 days ago7 downloads
main-3255 days ago6 downloads
main-2255 days ago5 downloads

Labels

Manifests