Atomic is a flexible, OOP-driven framework for building Garry’s Mod addons and gamemodes with a clean, modular architecture. Each package is a self-contained unit - just like an addon - with built-in dependency management and powerful libraries for writing structured, maintainable Lua code.
local package = current()
local libui = package:getDependency("com.developername.libui")
package:listen(function(self)
libui:drawText(self:getPhrase("en", "hello_world"), libui.textSize.small, ScrW() / 2, ScrH() / 2, libui.color.white, libui.position.center)
end, "HUDPaint")
package:listen(function(self)
self.logger:info("package successfully enabled")
end, "onEnable")Simply place the framework in your addons/ folder.
Atomic will automatically load available packages.
Optional dependencies:
We welcome all contributions — bug fixes, improvements, and new libraries are appreciated. Please follow the project’s coding style and submit a pull request through GitHub.
