Vanguard Documentation¶
This directory is the complete guide and reference for Vanguard. The root project README is a quick introduction; these documents cover behavior, guarantees, edge cases, and the full public API.
Developer Notice
Vanguard is in early development and receives frequent updates. Check Wally for the newest published version and the changelog for work in progress.
Developer Workflow
Use Rojo and Wally together with Vanguard for the smoothest development experience.
Start Here¶
| Guide | What it covers |
|---|---|
| Getting Started | Installation, project layout, first service, first controller, and bootstrap |
| Configuration | Every StartOptions field and server/client defaults |
| Lifecycle | Registration, init ordering, priorities, start hooks, and OnStart |
| API Reference | Every method and public field on the main Vanguard module |
| Type System | Exported Luau types and autocomplete patterns |
| Roadmap | Next release focus, later initiatives, sequencing, and completion criteria |
Framework Concepts¶
| Guide | What it covers |
|---|---|
| Services | Server-owned systems, client-facing methods, priority, and discovery |
| Controllers | Client-owned systems and service proxies |
| Components | CollectionService-backed behavior and per-instance cleanup |
| Classes | Constructors, inheritance, registries, and runtime checks |
| Plugins | Extension registration, lifecycle hooks, dependency ordering, and diagnostics |
| Networking | Remote functions, signals, properties, replicators, client proxies, and protocol checks |
| Replicators | Server-owned replicated state trees, partial updates, and path observers |
| Network Security | Validation, authentication, verification, rate limits, and rejection handling |
| Network Protocols | Protocol 2, legacy protocol 1, handshake attributes, transport semantics, and compatibility |
| Errors | Stable framework error codes, direct links, causes, and resolutions |
Utilities¶
The utility index explains when to use each utility.
| Utility | Guide |
|---|---|
| Cache | Cache |
| Class | Class |
| Cleaner | Cleaner |
| Component | Components |
| Logger | Logger |
| Math | Math |
| NetworkGuard | NetworkGuard |
| PluginHost | Plugins |
| Promise | Promise |
| RateLimiter | RateLimiter |
| Replicator | Replicators |
| RemoteProperty | Networking |
| RemoteSignal | Networking |
| Signal | Signal |
| Switch | Switch |
| Validator | Validator |
Operations¶
| Guide | What it covers |
|---|---|
| Troubleshooting | Startup errors, Wally paths, remote failures, and debugging checklists |
| Migrating from Knit | Hook aliases, API mapping, and migration differences |
| Roadmap | Toolbox distribution, utilities, tooling, docs, and contributions |
What's Next¶
Vanguard 0.1.15 ships the Plugin Developer API, a protocol 2
compatibility boundary, and the first Replicator state-tree API. Later
roadmap work includes a Roblox Toolbox release, additional utilities, expanded
documentation, Studio tooling, and a clearer community contribution process.
Roadmap features are not available until they appear in the Changelog as released behavior.
Documentation Conventions¶
Vanguard.Method(...)andVanguard:Method(...)are both supported by public methods on the main module.- Utility objects use normal Lua method conventions. Call instance methods with
:unless a guide explicitly says otherwise. - Server examples belong in
ServerScriptService; client examples belong inStarterPlayerScriptsor another client container. - A callback shown as returning
boolean, string?should returntrueon success orfalse, reasonon rejection. - Ordering described as alphabetical uses the registered object's
Name.
Version¶
These docs describe Vanguard 0.1.15 and network protocol 2. Vanguard
0.1.14 remains the last protocol 1 release; see the
Changelog for compatibility notes.