Reference
Public API notes, import paths, and compatibility surfaces.
In this section
Related section pages:
Public Plugin API
Pulse exposes an experimental public v0.2 Plugin API. It is importable and documented, but full backward compatibility is not promised until the API is stabilized.
imports.go
import ( "github.com/pulse-core/Pulse/core/plugin" "github.com/pulse-core/Pulse/core/content" "github.com/pulse-core/Pulse/core/gameplay" "github.com/pulse-core/Pulse/core/command" "github.com/pulse-core/Pulse/core/event")module.txt
github.com/pulse-core/PulsePublic Surface
- core/plugin is the main entrypoint. Implement plugin.Plugin and use plugin.Context in Init.
- core/content is for plugin-owned content declarations: BlockSpec, ItemSpec, TypedBlockSpec, TypedItemSpec, EffectSpec, and EntityTypeSpec.
- core/gameplay is DTO-only. Use plugin.Context.Gameplay() for authoritative gameplay calls.
- core/command is for command registration and handlers.
- core/event is for subscriptions, priorities, cancellable events, and custom plugin events.
Handle Reference
Method
Gameplay
Signature
ctx.Gameplay()Purpose
Returns the server-owned gameplay facade for players, worlds, entities, sessions, inventory, and effects.
Method
Players
Signature
Gameplay().Players()Purpose
Opens the player collection with lookup by name, ID, XUID, UUID, or active session identity.
Method
Inventory
Signature
PlayerHandle.Inventory()Purpose
Returns an inventory handle whose mutations go through server validation and Bedrock sync.
Method
ContainerAt
Signature
WorldHandle.ContainerAt(pos, size)Purpose
Creates or resolves a server-owned container handle at the target world position.
Method
RegisterCommand
Signature
ctx.RegisterCommand(command.New(...))Purpose
Registers a plugin command and scopes cleanup to plugin unload.
Method
Signature
Purpose
Gameplay
ctx.Gameplay()Returns the server-owned gameplay facade for players, worlds, entities, sessions, inventory, and effects.
Players
Gameplay().Players()Opens the player collection with lookup by name, ID, XUID, UUID, or active session identity.
Inventory
PlayerHandle.Inventory()Returns an inventory handle whose mutations go through server validation and Bedrock sync.
ContainerAt
WorldHandle.ContainerAt(pos, size)Creates or resolves a server-owned container handle at the target world position.
RegisterCommand
ctx.RegisterCommand(command.New(...))Registers a plugin command and scopes cleanup to plugin unload.