A high-performance and reliable signal library for Roblox.
NewSignal is a lightweight alternative to Roblox's BindableEvent with superior performance and error handling done all for you.
- Incredibly Fast — Outperforms GoodSignal, LemonSignal and SignalPlus in benchmarks
- O(1) Disconnect — Doubly-linked list architecture permits constant-time connection removal
- Thread Recycling — Efficient coroutine reuse for async operations
- Zero Dependencies — Standalone library in pure luau with no external requirements
- Security — Handles all possible edge cases while still being as performant as possible
- Familiar API — Similar API to other Signal Modules and tries to simulate Roblox's
BindableEventAPI with additional features - Global Registry — Ease of use across scripts
- Download the latest release
- Place the
NewSignalfile in your game wherever you want - Require it in your scripts
I will add a package on the Roblox Marketplace soon.
- Download the latest release from github
- Place the script inside of your game
- Require it in your scripts
I'll put it on it as soon as possible (I need to figure it out)
local NewSignal = require(path.to.NewSignal)
-- Create a signal
local Signal = NewSignal.new()
-- Connect a listener
local Connection = Signal:Connect(function(Param)
print(`The Signal Got fired, param: {Param}`)
end)
-- Fire the signal
Signal:Fire("Hello")
-- Disconnect the listener
Connection:Disconnect()See Documentation here
MIT — See LICENSE for details.