The playground bundle used
in our online playground exactly does 1 and 2, but not 3. You’d need to get the output, tweak it in some way to eval in your environment.
Note that it’s not trivial to compile third party packages though. The online playground doesn’t come with the same build system as the locally installed compiler.