Classes Hub 
Scriptum’s Classes Hub is your workspace for managing code across sessions. It provides a structured way to organize your scripts while keeping the flexibility of dynamic execution.
What’s Inside the Classes Hub?
When you open the Classes Hub, you'll see:
-
A
Runtime Classes
section that lists all classes defined in the current session. -
Each class displays:
-
Class name
-
Error indicator if the script fails to compile
-
Include toggle, which determines whether this class is part of the session's execution pass
-
You can also create a new class using the ➕ button. Classes created this way will appear immediately and can be compiled, included, or excluded on the fly.
How Are Classes Used?
In Scriptum, you can define standard C# classes with static methods and fields, just like in a regular IDE. However, Scriptum offers some custom behavior through its preferences system:
-
If Start with Entry Template is enabled in the preferences, Scriptum will auto-generate a class (by default called
Main
) with aRun()
method. The method defined in Entry Point (default isMain.Run
) will be automatically invoked when executing the session. -
If Start with Entry Template is disabled, you can freely write top-level static code in the editor without wrapping it in a class. The editor behaves like a multiline REPL, giving you flexibility to write logic directly or define your own classes manually.
-
All other classes behave like regular C# classes. You can define any number of them, use static or nested types, and invoke them from other classes or from the entry point method.
What is a Session Class?
A session class is a dynamic C# script defined by you inside Scriptum. Think of it as a temporary class that exists within your scripting environment.. Editable, executable, and persistent throughout your session.
Session classes are useful for:
- Prototyping complex logic in a contained format
- Organizing your script flow across multiple files
- Creating main entry points for runtime execution
- Keeping logic modular while scripting in the Editor