Ivy-Interactive / Ivy-Interactive/Rusty-Framework
[Hooks] Implement Native OS Integration Hooks (File/Folder Dialogs & Clipboard)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 3
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Problem Statement
Applications built with rusty targeting native desktop environments require reactive hooks for invoking native OS dialogs and interacting with the system clipboard (use_file_dialog, use_folder_dialog, use_save_dialog, use_clipboard).
Missing Functionality
use_file_dialog: Hook to prompt native file open picker with file filters.use_folder_dialog: Hook to prompt native directory/folder picker.use_save_dialog: Hook to prompt native save file picker with default names and extensions.use_clipboard: Asynchronous read/write hook for system clipboard text and data.
Proposed Architecture & Design
- Implement hooks in
rusty/src/hooks/os.rs. - For native desktop targets, delegate to
rfd(Rust Native File Dialogs) andarboard(clipboard). - For WebAssembly / browser targets, fallback to HTML5 Input/File API and
navigator.clipboard.
Acceptance Criteria
-
use_file_dialog,use_folder_dialog,use_save_dialogtrigger native file selection pickers on desktop targets. -
use_clipboardprovides reactive copy and paste operations across platforms. - Fallback behavior handles web browser environments gracefully.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading rusty/src/hooks/os.rs and comparing the native and WebAssembly targets described in the issue. Check how rfd, arboard, HTML5 Input/File APIs, and navigator.clipboard would map to the four proposed hooks. Done means the three dialogs work on desktop, clipboard copy and paste are reactive across platforms, and browser fallback behavior is graceful.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, wasm
- Domain
- desktop, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100