Hi Roc community, I am implementing a video editor and am designing a generative plugin system.
![]()
This has been a long time idea for me and this year I finally have the courage to do it
The editor itself is written in Rust and currently working
I want to add an AI feature on top of it.
However, instead of conventional "agentic editing"
what I want is more like a generative plugin system
Like VS Code, but users can vibe creating their own plugins, so that the UI of the editor can adapt
This is more powerful than one-shot AI editing because the generative plugin can be saved for future use so it's deterministic
JavaScript or Lua are probably the easiest language to embed, but hey, we are in late 2026
AI is already very good at writing non-popular programming languages and I feel Roc have a better abstraction for this kind of work
Therefore I wonder, is it possible to vendor the Roc compiler along with my Rust application so that the user can just vibe coding Roc
I mean, users vibe editing and generating plugins, but plugins are written in Roc under the hood, which users don't need to know.
Is the Roc project mature enough for this kind of workflow?
Hi @Albert,
This is a use case Roc is designed for but we don't have a guide for this yet. It should be doable with AI assistance. On maturity, there are still frequent breaking changes in Roc, we do hope to release Roc 0.1 soon.
Now, rather than embedding the compiler, I’d define your plugin API as a Roc platform whose targets use output: Shared. The host is then just a small Rust staticlib that forwards hosted functions to your editor. Your editor ships the roc binary, runs roc build plugin.roc to get a .dylib/.so/.dll, and dlopens it. See test/dylib in the roc repo and roc-platform-template-rust / basic-cli for Rust hosts, and use roc glue with RustGlue.roc for bindings. There’s no stable embeddable compiler library (libroc) yet; that’s planned for after 0.1.
Note: the first draft of this post was written by Claude Opus 5.5 (high) and reviewed and edited by me.
Last updated: Nov 04 2026 at 18:54 UTC