LuBu is a simle lua bundler which allows you to compress .lua and .dll modules into one.
See example-project
folder
- install lubu.exe from the latest release
- create
lubu.json
file in your project folder - set up your config
- use
lubu.exe lubu.json
LuBu config must have fields "modules", "modules" and "output". Also you can add some constants in "const"
main
-string
- path to main filemodules
-map[string]string
- .lua / .dll modules list, where key is module name (used inrequire()
), value is a path to moduleoutput
-string
- path to bundled fileconst
-map[string]interface{}
- constants list, where key is variable name and value is a constant value. Only string, number and bool are supportedwatcher_delay
-float64
- delay for "watcher" in milliseconds. Watcher will check files modification time with this interval. If one of files was changed lubu will re-bundle your script.
{
"modules": {
"sum": "src/sum.lua",
"mul": "src/mul.lua",
"lfs": "src/lfs.dll"
},
"const": {
"VERSION": "1.1a"
},
"main": "src/init.lua",
"out": "dist/release.lua",
"watcher_delay": 250
}
Also you can find auto json generator in example
folder. Run it using go run generate-lubu-config.go
my-project/
├── src/
│ ├── lfs.dll
│ ├── init.lua
│ ├── add.lua
│ └── mul.lua
├── lubu.exe
└── lubu.json
git clone https://github.com/chaposcripts/lubu/
cd lubu
go build
or usego build && lubu.exe lubu.json
to run it after building
- add .dll modules support (Done!)
- add resource bundler (ttf, png, etc.)