WolfDesk Example
This example demonstrates a ticketing system (WolfDesk) built with the Act Framework. It highlights complex workflows, state management, and event-driven design, and shows how to model real-world business processes using state machines and events.
What You'll Learn
- How to model a ticketing system as a set of state machines
- How to define actions, events, and reactions for complex workflows
- How to use schemas for validation and type safety
- How to test and run the example
Source Files
- main.ts: Example usage and entry point
- ticket.ts: Ticket domain logic
- tickets.ts: Ticket collection logic
- bootstrap.ts: Initialization logic
- jobs.ts: Background jobs
- errors.ts: Error definitions
Schemas
Services
How It Works
- The ticket state machine models the lifecycle of a support ticket.
- Actions represent user or system commands (create, assign, resolve, etc.).
- Events are emitted for each action and drive state transitions.
- Reactions and background jobs automate workflows and notifications.
Usage
See the source files above for implementation details and usage examples.