📄️ Pagination
FlowCord provides two distinct pagination modes. Button pagination pages through buttons when a menu has more than will fit in Discord's component limits. List pagination pages through data — a list of items fetched from a database or cache. They serve different purposes and are configured differently.
📄️ Sub-Menus
A sub-menu is a menu opened from within another menu, with a completion callback that fires when the sub-menu finishes. The parent menu waits while the sub-menu runs, then resumes when the sub-menu calls ctx.complete().
📄️ Guards & Pipelines
Guards and pipelines give you a composable way to add pre-conditions to button actions. A guard checks a condition and halts execution if it fails. A pipeline sequences multiple actions — including guards — into a single action callback.
📄️ Layout Mode
Layout mode uses Discord's Components v2 system, which allows richer, more flexible message layouts using display components alongside interactive elements. It is an alternative to embeds mode and cannot be combined with it on the same menu.
📄️ Fallback Menus
By default, calling goBack() when the navigation stack is empty closes the session. A fallback menu changes this behaviour: instead of closing, FlowCord navigates to the specified menu.
📄️ Tracing & Debugging
Navigation tracing
📄️ Session Persistence & Scope
FlowCord sessions are entirely in-memory and process-scoped. This is an intentional design boundary, not a missing feature.