Skip to content
Snippets Groups Projects
hinto-2.md 5.86 KiB
layout: cp
title: hinto-janai full-time work on Cuprate (3 months)
author: hinto-janai
date: May 5, 2024
amount: 264
milestones:
  - name: RPC server design
    funds: 20% (52.8)
    done: 5 June 2024
    status: finished
  - name: JSON RPC interface
    funds: 40% (105.6)
    done: 9 August 2024
    status: finished
  - name: Binary/other RPC interface + other work
    funds: 40% (105.6)
    done: 9 August 2024
    status: finished
payouts:
  - date: 18 June 2024
    amount: 52.8
  - date: 12 August 2024
    amount: 211.2

What

Cuprate is an alternative Monero node implementation, currently worked on by me and Boog900.

The next large section that needs work is the RPC server. Another contributor, yamabiiko, is also interested in working on the RPC server, although they currently have limited time, so I'll be starting on it alone for now (with much help from Boog900).

Who

I'm hinto-janai.

Past CCS: !422 (merged).

RPC server

yamabiiko has started a discussion on the design for the RPC server here, and Boog900 has suggested some changes.

The first milestone's time will be spent on:

  • Fleshing out the current proposal or potentially finding better alternatives
  • Preparing an initial design document, similar to database/

The current design for the database was spread out across several months, although, the design for the RPC server should take much less time.

After a design is set, the second/third milestone will start on the RPC interface library - the timeline for this is by the end of this CCS. This includes testing, documentation, etc. The current plan is to separate the interface from the inner RPC handler. After the interface is finished, the internal handler(s) will be finished in another CCS (potentially split between contributors).

By the end of this CCS, the initial design document will be polished to reflect the implementation, similar to here, and user documentation will also be finished (again, like database/).

The resulting design document will be added to Cuprate's architecture book (see below).

Other work

There's also other work that I believe would be beneficial to start on earlier rather than later.

These will be started on during this CCS:

  • Cuprate's architecture book
  • Persistent transaction pool
  • monero-core RPC PRs
  • Benchmarking suite
  • Project lints

The persistent transaction pool will be finished within this CCS, the rest will grow alongside the project.