17th May 2024
5 min read

ARK Development Report - May 17, 2024

Welcome to our latest Weekly Development Report, where we spotlight the valiant efforts of our development team. This week, we have worked on new features for ARK Connect, including Send, Receive, and Address Book functionalities. The ARK Scan team has focused on fixing reported issues and continued working on WebSockets integrations. The ARK Vault team has been finalizing the multisignature server and its integration within ARK Vault for Mainsail. Additionally, the Mainsail team has been working on consensus optimizations and adding a database to the EVM integration.

Development Summary

Below is a breakdown of total commits and authors by project for development activity over the last week from May 10th through May 17th, 2024.

Project Commits Authors
ARK Connect 38 3
ARK Scan 22 2
ARK Vault 18 3
Mainsail 22 4

Overall, the team has demonstrated consistent productivity and engagement over this period, with a total of 100 commits across all projects.

The number of commits and data for each project will fluctuate every week depending on internal sprints, objectives, and difficulty.

ARK Connect Weekly Progress

This week, we have continued working on the ‘Send’ & ‘Receive’ functionality, as well as the new ‘Address Book’. The work done this week includes:

  • Fixed the display of the correct amount of memo characters on the ‘Receive’ page.
  • Replaced internal links with buttons in the transaction list for improved accessibility.
  • Fixed the tooltip to display the full receiver address.
  • Added an ‘Add Contact’ page where users can add contacts to their address book.
  • Created the initial ‘Send’ page with basic components and validation.
  • Added an addresses overview page to display the list of contacts the address has stored.
  • Implemented the option to remove contacts from the address book.
  • Pre-seeded the address book for dev mode.
  • Added address book dropdown handling for saved contacts on the send page.
  • Ensuring the address book gets cleared when the extension is reset.
  • Improved address validation naming.
  • Added the option to edit contacts in the address book.
  • Used the arkvault-url codebase to generate receive URLs.
  • Mimicked ARK Vault’s behavior for the address input dropdown.

Next week, we’ll continue working on these features and start preparing for internal testing.

ARK Scan Weekly Progress

This week, we have mainly focused on fixing issues discovered during testing and started working on the initial WebSockets integration. Here are the details:

  • Updated config details because Mainsail’s nethash was set incorrectly, causing issues with ARK Vault deeplinks.
  • Fixed an issue in the ARK Connect integration modal where the text was too close to the ‘X’ button.
  • Fixed intermittently failing statistics command test, transaction type coverage, and delegate databox tests.
  • Continued working on the wallet page webhooks.
  • Added WebSockets to blocks page as a PoC.

Next week, we’ll continue working on the WebSockets integration to see what kind of improvements we can achieve by adding it to ARK Scan.

ARK Vault Weekly Progress

ARK Vault has seen significant progress on Mainsail’s multisignature integration and is now in the final stages of development. This week’s work included:

  • Added handling for Mainsail network deeplinks.
  • Worked on the coverage of ‘Utils’ and ‘Votes’ to bring it to 100%.
  • Prevented the use of dynamic fees for Mainsail’s multisignature registration and set it to static.
  • Finished up changes to the multisignature server to allow for multisignature registrations to be sent on Mainsail.

Next week, we aim to complete the multisignature registration integration and finalize the multisignature server codebase to allow for other transaction types to be sent as well.

Mainsail Weekly Progress

This week, our work focused on further improvements to the consensus and other parts of the codebase, as well as the EVM database integration. Here are the details:

  • Insert transactions in chunks to PostgreSQL to support very large blocks.
  • Refactor consensus to prepare a block after commit instead of waiting for a new round.
  • Dispatch events for received +2/3 of prevotes or precommits only once per round.
  • Support query criteria for the public API on wallet attributes.
  • Add EVM database using the heed library for LMDB.
  • Create a transaction-pool package similar to API, implementing CLI commands for common process actions (start, stop, run, logs, update, etc.).
  • Add initial JSON-RPC implementation for transaction-pool-server and transaction-pool-client. The client will run on the main Mainsail process and communicate with the server on the transaction-pool process.
  • Remove support for transaction broadcasts on P2P.

Next week, we’ll focus on syncing state to the transaction-pool using state deltas, implementing the remaining endpoints on tx-pool-server (bootstrap, sync-delta, getTX, removeTX, syncPeers, getStatus), and benchmarking and improving EVM integration.

Feedback & Feature Requests

If you are using our open-source products and would like to provide feedback or request a feature, please feel free to contact us via the contact pages for the specific product you are using or open an issue on GitHub.

Quick access links to GitHub issues pages:

Follow on Twitter (X)

Follow us on X (Formerly Twitter) and keep checking the blog to stay up-to-date on all of our new releases. We post a weekly development report so you can easily see what we’ve been up to and follow along our journey towards making your decentralized future a reality.


Get in Touch!

Whether you want to learn more about ARK Ecosystem, want to apply for developer bounty, become our partner or just want to say Hello, get in touch and we will get back to you.

An Ecosystem of Developers

Join us on our journey to create the future of Web3.