Open source library

Based on Validark's original version.

Janitor

Cleanup code should be plain before it gets clever.

Figure

fig. 1 — One owner gathers cleanup work, and one cleanup boundary releases it predictably.

Project note

A popular cleanup tool for Roblox games. Its API is small and predictable.

The problem

Games that run for a long time collect many resources. These include connections, instances, promises, and callbacks. Each one has its own way to clean up. When nobody owns them, teardown turns into a hunt and leaks hide in the gaps.

Janitor gives those resources one owner and one clear point where cleanup happens.

Stewardship

Janitor builds on Validark’s original work. I maintain and improve it. I refine the API, write docs, publish releases, and keep it dependable for the Roblox developers who use it.

Its main design choice is restraint. Janitor doesn’t try to be a full lifecycle framework. It gives different kinds of resources one way to clean up, then leaves them alone.

What it demonstrates

  • Long-term care of a public API.
  • Clear credit and a smooth handoff between maintainers.
  • Good docs and steady releases for a community library.
  • Lifecycle fixes that stay within the tool’s job.