elicit_winit 0.11.0

Elicitation-enabled winit code-generation tools for windowing and input
Documentation

elicit_winit

elicit_winit is the elicitation shadow crate for winit. All tools are emit-only: they generate idiomatic Rust code snippets for native windowing applications. No windows are created at runtime — no winit::Window or EventLoop lives in the MCP server process.

Plugins

Plugin Namespace Tools Coverage
WinitWindowPlugin winit_window__* 8 Window creation and runtime configuration
WinitEventPlugin winit_event__* 7 Event loop and ApplicationHandler impl
WinitInputPlugin winit_input__* 7 Keyboard, mouse, touch, and cursor input

Tool reference

winit_window__*

Tool Description
attributes Generate a WindowAttributes builder chain
set_title Generate code to update a window's title bar text at runtime
set_visible Generate code to show or hide a window
set_resizable Generate code to enable or disable user resizing
set_decorations Generate code to toggle window decorations
set_fullscreen Generate code to enter or exit fullscreen
set_inner_size Generate code to resize the window's client area
set_min_inner_size Generate code to constrain the minimum window size

winit_event__*

Tool Description
app_skeleton Generate a complete ApplicationHandler impl skeleton
event_loop Generate the main function body creating an EventLoop and running an application
resumed_handler Generate a resumed handler body
window_event_handler Generate a window_event handler body
device_event_handler Generate a device_event handler body
about_to_wait_handler Generate an about_to_wait handler body
exiting_handler Generate an exiting handler body

winit_input__*

Tool Description
keyboard_handler Generate a WindowEvent::KeyboardInput match arm for a physical key code
named_key_handler Generate a WindowEvent::KeyboardInput match arm for a NamedKey variant
mouse_button_handler Generate a WindowEvent::MouseInput match arm
cursor_moved_handler Generate a WindowEvent::CursorMoved handler
mouse_wheel_handler Generate a WindowEvent::MouseWheel handler
touch_handler Generate a WindowEvent::Touch handler
ime_handler Generate a WindowEvent::Ime handler

Usage

[dependencies]
elicit_winit = "0.11"
use elicit_winit::{WinitWindowPlugin, WinitEventPlugin, WinitInputPlugin};

let server = server
    .register_plugin(WinitWindowPlugin::new())
    .register_plugin(WinitEventPlugin::new())
    .register_plugin(WinitInputPlugin::new());