Replit & Replit Integration for Site

Produce a Replit-compatible binary and instance.

June 21, 2023

Reward: 4 stars

ID: B0282

ApplyBountyDev: ToolOther

Replit & Replit Integration for Urbit Developer Site

A Replit instance lets you specify the running status of a ship and associated files. In practice, this means a fakezod which is automatically logged in, has %base |mounted, and has |autocommit set for ease of use. The instance should connect to the file in some cases, the Dojo terminal in others.

We anticipate that the biggest part of this bounty will focus not on designing the Replit environment but instead on building a Prybar binary for full REPL compatibility.

By forking from your base instance, you should be able to prepare a base instance which meets the above basic setup criteria. Then from that, build forks which automatically inject the correct code when a generator or other specified expression has been supplied to the student.


Milestone 1 (3 stars)

Build a working Replit-compatible binary and base instance. This Replit instance should be Prybar-compatible so that the Replit console can directly run the Dojo instance. (That is, no screen or tmux screen management is necessary for the user.)

This may require using %khan and other affordances to interact with Dojo or a primary agent.

The final deliverable should include the Prybar binary, a base Replit instance, and a Docker image suitable for use with Replit.

Milestone 2 (1 star)

The Hoon School docs will benefit from direct integration of executable code blocks. To claim this bounty, you will need to prepare and include customized Replit instances at every appropriate explanation, exercise, and challenge in the Hoon School docs. (This does not mean everywhere there are code blocks now; you will work with your grant champion to identify all of these.)

(This can be split into a separate bounty based on temperament of the grantee completing Milestone 1.)