Package contains is a libs for gopher-lua.
Development version, available on github, released under BSD 3-clause.
go get github.com/vadv/gopher-lua-libs
- argparse argparse CLI parsing https://github.com/luarocks/argparse
- base64 encoding/base64 api
- cloudwatch aws cloudwatch log access
- cert_util monitoring ssl certs
- chef chef client api
- cmd cmd port
- crypto calculate md5, sha256 hash for string
- db access to databases
- filepath path.filepath port
- goos os port
- http http.client && http.server
- humanize humanize github.com/dustin/go-humanize port
- inspect pretty print github.com/kikito/inspect.lua
- ioutil io/ioutil port
- json json implementation
- log log port
- plugin run lua code in lua code
- pprof pprof http-server for golang from lua
- prometheus prometheus exporter
- regexp regexp port
- runtime runtime port
- pb https://github.com/cheggaaa/pb port (v3)
- shellescape shellescape https://github.com/alessio/shellescape port
- stats stats https://github.com/montanaflynn/stats port
- storage package for store persist data and share values between lua states
- strings strings port (utf supported)
- tac tac line-by-line scanner (from end of file to up)
- tcp raw tcp client lib
- telegram telegram bot
- template template engines
- time time port
- xmlpath gopkg.in/xmlpath.v2 port
- yaml gopkg.in/yaml.v2 port
- zabbix zabbix bot
- bit bitwise operations
For the quick overview you can use standalone interpreter with listed libs. Examples and documentation for modules can be found in their directories.
go install github.com/vadv/gopher-lua-libs/cmd/glua-libs@latest
glua-libs example.lua
This example shows basic usage of this libs in your code
package main import ( "log" "flag" "os" lua "github.com/yuin/gopher-lua" libs "github.com/vadv/gopher-lua-libs" ) var ( exec = flag.String("execute", "", "execute lua script") ) func main() { flag.Parse() state := lua.NewState() defer state.Close() libs.Preload(state) if *exec != `` { if err := state.DoFile(*exec); err != nil { log.Printf("[ERROR] Error executing file: ", err) } } else { log.Println("Target file was not given!") os.Exit(0) } }