search/
Start typing to search packages!
package_2
kernel
By @nazumah
Roblox
MirroredKernel
Kernel is a high-level, service-oriented framework for Luau on Roblox. Built as the ultimate abstraction layer over NetFlow, it provides a professional, scalable, and 100% type-safe architecture for institutional-grade game development.
The Kernel Difference
- Professional IntelliSense: Kernel solves the "type-loss" problem common in other frameworks (like Knit). By using explicit interface casting in the entry point and generic-aware retrieval methods, Kernel ensures your IDE always knows exactly what your code does.
- Zero-Overhead Core: All networking is handled by NetFlow's binary-buffered serialization. No table-wrapping or variadic overhead.
- Declarative Networking: Define your service's network interface directly alongside its logic. Kernel handles the lower-level NetFlow namespacing and packet definitions automatically.
- Micro-Service Architecture: Decouple your game into singletons (Services on the server, Controllers on the client) with strict lifecycle hooks (
KernelInit,KernelStart).
Installation
Wally
Update your wally.toml:
[dependencies]
Kernel = "nazumah/kernel@1.8.8"
NetFlow = "nazumah/netflow@1.7.5"
Async = "nazumah/async@1.0.4"
Signal = "nazumah/signal@1.0.4"
Quick Start
1. Define a Typed Service
local Kernel = require(path.to.Kernel)
-- Define the interface for IntelliSense
export type PointsService = {
PointsUpdated: Kernel.Signal<number>,
GetPoints: (self: PointsService, player: Player) -> number
}
local PointsService = Kernel.CreateService({
Name = "PointsService",
Client = {
PointsUpdated = Kernel.Signal.new()
}
})
function PointsService.Client:GetPoints(player: Player)
return 100 -- Server logic
end
return PointsService :: PointsService
2. Type-Safe Retrieval (Client)
local PointsController = Kernel.CreateController({ Name = "PointsController" })
function PointsController:KernelInit()
-- Use generics for perfect IntelliSense
self.PointsService = Kernel.GetService<PointsService>("PointsService")
end
function PointsController:KernelStart()
self.PointsService.PointsUpdated:Connect(function(points)
print("Score:", points)
end)
end
Documentation
- Why Use Kernel?
- API Reference
License
Licensed under the MIT License.
Package Details
Install command (Click to copy)
Version
1.8.8
License
MIT
Safe for commercial use
License identified from the packaged LICENSE file; the manifest declared none.
Automated license review — not legal advice.
