Welcome to our latest Weekly Development Report, where we spotlight the valiant efforts of our development team. This week, ARK Scan received a minor frontend update aimed at improving the clarity and readability of gas fee data. On the SDK side, we focused on introducing new token-related features and began updating the documentation to reflect these additions. ARK Vault also saw improvements to token handling, helping ensure more accurate transfers and clearer transaction history. Meanwhile, the Mainsail team worked on general improvements and continued expanding test coverage across the platform.
Development Activity Summary (March 06 – March 13, 2026)
Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from March 06, 2026, to March 13, 2026.
| Project | Commits | Authors |
|---|---|---|
| ARK Connect | 0 | 0 |
| ARK Scan | 3 | 1 |
| ARK SDKs & Docs | 58 | 2 |
| ARK Vault | 28 | 2 |
| Mainsail | 35 | 3 |
During this period, the team maintained strong productivity and engagement, delivering 124 merged commits across all projects.
It’s important to note that weekly commit counts and project-specific data may fluctuate based on the focus of internal sprints, evolving objectives, and the complexity of tasks undertaken.
ARK Scan Weekly Report
This week, we have made a small frontend refinement in ARK Scan to improve the readability of gas fee data. The gas tracker values displayed in gwei on both the homepage and the statistics page were updated to limit the number of decimal places to two. This change ensures that gas values are presented in a cleaner and more user-friendly format while maintaining accuracy, preventing unnecessarily long decimal numbers from appearing in the interface.
Next week, we will review and resolve all issues identified by our internal testing team.
ARK SDKs & Docs Weekly Report
This week, we focused on adding token-related features to our SDK packages and began updating the documentation to reflect some of these changes. The work completed included:
- Documentation Site:
- An update was added to the Mainsail documentation to clarify transaction submission requirements. It specifies that Mainsail does not support unsigned transactions through
eth_sendTransaction. Instead, all transactions must be fully constructed, signed, and serialized on the client side before being submitted to the network usingeth_sendRawTransaction. This clarification helps developers better understand the expected transaction workflow when interacting with Mainsail.
- An update was added to the Mainsail documentation to clarify transaction submission requirements. It specifies that Mainsail does not support unsigned transactions through
- Python Crypto Package:
- Added a token ABI to support common ERC20 contract methods such as
transferandapprove, enabling consistent interaction with token contracts across the application. - Adjusted utility functions to use BigNumber for formatting and calculations. This ensures that large values such as token supplies, balances, and amounts are handled safely and accurately without issues caused by standard number limitations.
- Added a token ABI to support common ERC20 contract methods such as
- Python Client Package:
- Refactored Ethereum call handling by renaming the method to
evmCalland updating its payload parameters. This allows the method to support not onlyeth_callbut also other EVM call types, improving flexibility and compatibility with different contract interactions. - Added general
/tokens/*endpoints, providing API access to token-related data and enabling retrieval of token information. - Added
/wallets/*token endpoints and updated the existing/walletsendpoint to includetokenCount, enabling retrieval of wallet-specific token data and counts. - Refactored endpoints to use a query parameters dictionary, aligning with the PHP SDK style. Required arguments remain separate, while optional parameters are passed via a
paramsobject, making the API more flexible and easier to extend.
- Refactored Ethereum call handling by renaming the method to
- PHP Crypto Package:
- Implemented token support by adding a token encoder, token transaction builder, and token ABI, enabling the application to construct and interact with token-related transactions.
- Added support for batch transfers by including the
BatchTransfercontract ABI, enabling the application to construct and execute multiple token transfers in a single transaction. - Refactored token utility functions to use big decimals when formatting units, ensuring accurate handling of large token amounts and preventing precision issues with standard number types.
- Refactored and completed remaining test coverage for utility functions, ensuring all edge cases and scenarios are properly tested and validated.
- PHP Client Package:
- Added general
/tokens/*endpoints, providing API access to retrieve and manage token-related data.
- Added general
- TypeScript Crypto Package:
- Added a
TokenApproveBuilderin the TypeScript crypto library, providing a builder pattern for constructing token approval transactions similar to the existingTokenTransferBuilder. - Refactored the
isTokenTransfermethod to correctly identify contract deployments. The method column now displays “Contract Deployment” instead of “Transfer” for token creation transactions.
- Added a
- TypeScript Client Package:
- Added
minBalanceparameter support to wallet token queries, allowing filtering of tokens to include only those with balances above a specified minimum.
- Added
Next week, we will continue enhancing token support in the SDK packages and update the documentation site as needed, addressing any outstanding issues.
ARK Vault Weekly Report
This week, two improvements were made to the token handling features in ARK Vault. First, the token transfer flow was corrected to ensure that the available balance is taken from the specific sender wallet rather than summing the balances of all selected wallets. This ensures that transfers reflect the actual balance of the wallet being used.
Second, the token transfers table was updated to properly display contract deployment transactions. Previously, contract deployments were incorrectly shown as token transfers, but now they are correctly labeled under the “Contract Deployment” method, improving clarity and accuracy for users reviewing transaction history.
Next week, we will carry on with token integration and resolve any new issues reported by the internal testing team.
Mainsail Weekly Report
This week, we focused on general improvements and increasing test coverage. Work included:
- Upgraded the Heed database to the latest version.
- Added support for including ERC20 tokens in approved transactions.
- Fixed the CI workflow for lint commits so it now correctly lints the codebase and automatically pushes a new commit when formatting changes are detected.
- Strengthened the
validatorSetUnpackmethod by strictly allowing only0bits onvalidatorBitmapvalues that exceed the number of validators, causing commits and proposals with modified validator bitmaps to throw an error. - Refactored the
crypto-proposalpackage and increased its test coverage, introducing stricter validation such as checks for leading and trailing bytes and additional schema validation.
Next week, we’ll continue improving the crypto packages and work on additional unit and database tests to further increase coverage.
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.