@makepad-reference

Guide to diagnosing Makepad build, widget, redraw and layout issues against the exact runtime revision.

Makepad Reference

This category provides reference materials for debugging, code quality, and advanced layout patterns.

When to Use

  • You need quick-reference material for common Makepad errors, debugging, or API lookups.
  • The task is diagnostic or reference-oriented rather than writing a focused feature in one subsystem.
  • You want a central starting point before diving into more specialized Makepad skills.

Quick Navigation

TopicFileUse When
API DocumentationOfficial docs index, quick API referenceFinding detailed API info
TroubleshootingCommon errors and fixesBuild fails, runtime errors
Code QualityMakepad-aware refactoringSimplifying code safely
Adaptive LayoutDesktop/mobile responsiveCross-platform layouts

Common Issues Quick Reference

ErrorQuick Fix
no matching field: fontUse text_style: <THEME_FONT_*>{}
Color parse errorCheck the installed live-design parser syntax; changing a valid hex color is not a general fix
set_text missing argumentAdd cx as first argument
UI not updatingCall redraw(cx) after changes
Widget not foundCheck ID spelling, use ids!() for paths

Debug Tips

# Run with line info for better error messages
MAKEPAD=lines cargo run  # Use the project-pinned toolchain; verify this diagnostic flag for its revision
// Add logging
log!("Value: {:?}", my_value);
log!("State: {} / {}", self.counter, self.is_loading);

Resources

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

The navigation table names topics, not bundled reference files. Verify exact Makepad API signatures and the project toolchain before changing code; preserve private values in logs, and test widget updates, input and target layouts rather than assuming a redraw call fixes every issue.