multi_editor_ui library

UI components for Multi-File Code Editor including Monaco Editor integration.

This package provides ready-to-use Flutter widgets for building code editing experiences with file trees, editor scaffolds, and plugin UI integration.

Features

  • Monaco Editor Widget: Cross-platform code editor with syntax highlighting
  • File Tree View: Hierarchical file browser with drag-and-drop
  • Editor Scaffold: Complete editor layout with header and panels
  • Theme Support: Dark/light themes with dynamic switching
  • Plugin UI: Integration points for plugin-contributed UI

Example

import 'package:multi_editor_ui/multi_editor_ui.dart';

EditorScaffold(
  fileTree: FileTreeView(controller: fileTreeController),
  editor: MonacoCodeEditor(controller: editorController),
)

Classes

Accessibility
Accessibility utilities for WCAG compliance.
AppDuration
Duration system - consistent animation and transition timing.
AppElevation
Elevation system - consistent shadow depths throughout the app.
AppIconSize
Icon size system - consistent icon sizing throughout the app.
AppRadius
Border radius system - consistent rounding throughout the app.
AppSpacing
Spacing system - consistent spacing values throughout the app.
AppThemeData
Professional theme configuration for the code editor application. Follows Flutter best practices 2025 and Material Design 3 principles.
AppTypography
Typography system - consistent text styles throughout the app.
ColorPrimitives
Primitive color tokens - the foundational color palette.
ColorSemantic
Semantic color tokens - colors with meaningful context.
ConfirmDeleteDialog
CreateFileDialog
CreateFolderDialog
EditorConfig
EditorController
EditorScaffold
EditorState
EditorThemeExtension
Custom theme extension for editor-specific colors. Extends Flutter's ThemeExtension to provide additional colors that are not part of the standard Material Design palette.
FileTreeController
FileTreeState
FileTreeView
FontPrimitives
Primitive font tokens - foundational typography values.
InteractionStates
Interaction states utilities for consistent hover, pressed, and focused effects.
MonacoCodeEditor
RenameDialog
SizePrimitives
Primitive size tokens - foundational size values.

Enums

ProgrammingLanguage
Programming language colors enum.

Extensions

ColorHelpers on Color
Color manipulation helpers.
EditorConfigPatterns on EditorConfig
Adds pattern-matching-related methods to EditorConfig.
EditorStatePatterns on EditorState
Adds pattern-matching-related methods to EditorState.
EditorThemeExtensionGetter on BuildContext
Extension to easily access EditorThemeExtension from BuildContext
FileTreeStatePatterns on FileTreeState
Adds pattern-matching-related methods to FileTreeState.
ThemeModeHelpers on BuildContext
Convenient theme mode helpers.