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-1789 days ago9 downloads
main-16234 days ago19 downloads
main-15256 days ago8 downloads
main-14257 days ago4 downloads
main-13257 days ago5 downloads
main-12257 days ago6 downloads
main-11257 days ago5 downloads
main-10257 days ago5 downloads
main-8257 days ago5 downloads
main-7257 days ago6 downloads
main-6257 days ago5 downloads
main-5257 days ago5 downloads
main-4263 days ago7 downloads
main-3263 days ago6 downloads
main-2263 days ago5 downloads

Labels

Manifests