using Astralis; using Spry; using Inversion; /** * MainTemplate - The base template for documentation pages * * Provides a clean, minimal HTML structure for documentation: * - HTML5 document structure * - NavSidebarComponent for navigation * - docs.css stylesheet for documentation styling * - htmx.js and htmx-sse.js for interactive components * - Template outlet for page content */ public class MainTemplate : PageTemplate { private NavSidebarComponent nav; private RouteContext route_context = inject(); public override string markup { get { return """ Spry Documentation
"""; }} public override async void prepare() throws Error { // Get the nav component and set the current path from the route context nav = get_component_child("nav"); nav.current_path = route_context.requested_path; } }