[RFP #001] Developing a Decentralized Painting Canvas on Cartesi Rollups


The Cartesi Foundation is seeking proposals for the development of simple playground DApps. These DApps should showcase the potential and capabilities of Cartesi Rollups to inspire developers to experiment with the technology and prototype their own applications.

The playground DApp should be easily accessible from Cartesi’s website, helping developers visiting it to grasp the value proposition of Cartesi Rollups as an execution layer. It should facilitate their immediate understanding that Cartesi supports the implementation of complex decentralized logic with software libraries readily accessible in the open-source world.

The following is an example of the type of application that we are seeking proposals for. Applicants have the option to submit a grant proposal for this suggested example or propose a different playground DApp that meets the same objective outlined above. We welcome creative and innovative ideas that showcase the potential of Cartesi Rollups and inspire developers to experiment with the technology.

Scope of Work

The successful proposal exemplified here should account for a DApp that implements a painting canvas where users visiting Cartesi’s website can collaborate and create a collective painting.

By accessing the DApp’s webpage, any user with Metamask installed in their browser and with enough (Testnet) ETH funds can collaborate on the work of the same art piece and see the results of everyone’s contributions.

The front end should allow users to specify brush, ink, and stroke parameters and simulate the painting directly on the browser. Once satisfied, the user submits the stroke as input to the DApp, by signing a blockchain transaction with the respective stroke data.

The back-end logic running on the Cartesi Machine will listen to the inputs and advance its state accordingly, i.e., it will update the painting in memory and generate a new image file that the client side will fetch. At the end of each transaction, each user sees the new image displayed on the webpage.


  1. A front-end interface that will be added to Cartesi’s portal, where users can see the current state of the collective painting and simulate their next proposed stroke. The client interface should be automatically updated according to the advancing of the Cartesi Machine so that the inputs sent by all users update the painting shown on the user’s screen;
  2. Implement the painting canvas logic on the front and back end (Cartesi Machine). We suggest the use of the following open-source software: Fluid Paint. The stroke simulated in the front end (deliverable 1) should be transformable into an input for the logic described here;
  3. Entire codebase on a permissive open-source license;
  4. Readme file explaining the project;

Technical Requirements

  1. The DApp should be built using the Cartesi SDK and be tested and deployed on a layer two Testnet (e.g., Optimism, Arbitrum, etc.);
  2. The front end should be embeddable in Cartesi’s website;
  3. The DApp should have a clear and readable codebase;

Evaluation Criteria

  1. User experience and design of the front end;
  2. Adherence to Cartesi’s technical requirements;
  3. Quality and completeness of the proposal and documentation;

Submission Requirements

  1. A detailed description of the proposed DApp and its architecture;
  2. Overview of the team and their relevant experience and expertise;
  3. Timeline for the development and delivery of the DApp;
  4. Cost estimate and budget breakdown;
  5. Contact Information

Bidding instructions

Interested teams should confirm the intention to submit a proposal and express their needs to the Cartesi Foundation.

The Cartesi Foundation is happy to help address any questions, share helpful resources, or advise on formulating the team’s proposal.

We are excited to see your proposals and work together towards the growth of the Cartesi ecosystem!

Hello everyone, there is a taker on this RFP whose proposal is now in the voting stage. Please see the proposal thread here:

And the voting link here:

1 Like