Welcome to our latest Weekly Development Report, where we spotlight the valiant efforts of our development team. This week, we focused on testing the Mainsail integration within ARK Scan, evaluating its functionality, and identifying areas for improvement. We also expanded the documentation site while enhancing the Platform SDK and PHP libraries. In ARK Vault, we continued refining Mainsail EVM changes and making additional UI improvements. The Mainsail team worked on the MetaMask PoC implementation and made additional improvements to the contracts.
Weekly Development Summary
Below is a breakdown of total commits and contributing authors by project, highlighting development activity from February 7th 2025, through February 14th, 2025.
Project | Commits | Authors |
---|---|---|
ARK Connect | 0 | 0 |
ARK Scan | 3 | 1 |
ARK SDKs & Docs | 72 | 4 |
ARK Vault | 248 | 4 |
Mainsail | 33 | 2 |
During this period, the team maintained strong productivity and engagement, delivering a total of 356 commits across all projects.
It’s important to note that weekly commit counts and project-specific data may vary depending on the focus of internal sprints, evolving objectives, and the complexity of tasks undertaken.
ARK Scan Weekly Report
This week, our primary focus has been testing the Mainsail integration within ARK Scan, evaluating its current functionality, and identifying areas for further improvement. Additional work completed this week includes:
- Display multipayment amounts on the transaction detail page.
- Created new tasks based on feedback and reviewing completed ones.
Next week, we will continue refining the integration, addressing feedback, and working on additional tasks to improve its capabilities.
ARK SDKs & Docs Weekly Report
During this week, we focused on expanding the documentation site and enhancing the Platform SDK and PHP libraries. Our work included:
-
Documentation Site:
- Added
/evm
and/tx
endpoints to the API documentation. - Introduced a disabled state option for quick access items when documentation is not yet released.
- Updated logo text color in dark mode to match the design.
- Added Mainsail dark icon as a color variant.
- Adjusted quick access link colors for better visibility in dark mode.
- Hid the search input on the home page.
- Ensured all supported languages and their respective framework logos were displayed correctly.
- Added
-
Platform SDK:
- Implemented EVM calls for username registration and resignation.
- Updated the username resignation function signature for enablement.
- Removed
Network
as a required property fromContact
and refactored related search methods accordingly. - Removed
Network
from profile validators.
-
PHP Crypto and Client Packages:
- Redesigned network configurations to remove reliance on Bitcoin details, requiring only
chainId
andepoch
. - Adjusted the
wif
value toba
(186) for testnet compatibility, replacing the defaultaa
(170) used in mainnet (Core). - Removed references to deprecated network methods.
- Fixed an issue affecting large transfer amounts.
- Removed types and typegroups.
- Added support for PHP v8.4.
- Redesigned network configurations to remove reliance on Bitcoin details, requiring only
Next week, we will continue improving the documentation site and refining PSDK for any additional changes required for the Mainsail EVM.
ARK Vault Weekly Report
Continued working on the Mainsail EVM changes as well as additional UI improvements. Work done this week includes:
- Fixed an issue with Vote and Registration transactions where fees were not correctly set.
- Refactored transaction fee warning to account for the addition of ‘gas’.
- Updated the navigation bar’s design:
- Improved layout and appearance.
- Refined styling and adjusted icon sizes for better consistency.
- Ensured a smoother experience across different screen sizes.
- Implemented new transaction types:
- Username Registration and Username Resignation, are now handled via EVM contract.
- Worked on new network switch functionality:
- Added Mainsail mainnet network with default configs from PSDK.
-
usePortfolio
hook now mutates & filters addresses based on the active network. - Implemented
useActiveNetwork
hook to provide the selected network, decoupled from wallets. - Removed Network Step from address creation & import flows (always using the active network from navigation).
- Renamed Portfolio page title to simply
Portfolio
. - Fixed transaction detail modal to properly handle exceptions for invalid validator public keys.
- Fixed address deletion logic:
- Ensures addresses are deleted from all networks when a user is removed.
- Allows addresses to be re-imported later.
- Added user balance visibility toggle feature:
- Implemented
use-balance-visibility
hook for toggling balance visibility on the Portfolio page. - Hook relies on
DashboardConfig
from SDK (can be refactored during config cleanup). - Introduced
HideBalance
component to toggle visibility. - Refactored
Amount
andAmountLabel
components to display****
when balance visibility is off. - Added a new user balance section in the navbar for both mobile and desktop (supports dark mode).
- Implemented
- Fixed address selection to properly update upon deletion.
Next week, we will continue working on Mainsail EVM support, adding new features, and further improving the user interface to align better with EVM network standards.
Mainsail Weekly Report
This week, we continued working on the MetaMask PoC implementation and additional contract updates. The work completed includes:
- Gas Price Update: Changed the transaction gas price unit from
gwei
towei
to align with MetaMask settings. - MultiPayment Contract Enhancements:
- Made the contract upgradable and accessible via a proxy contract, similar to other default Mainsail contracts.
- Ensured a fixed 5000 gas limit is forwarded with every payment to prevent recipient contracts from consuming excessive gas.
- Implemented an event emission for each payment, indicating success or failure, with statuses readable from logs.
- Enhanced Transaction Responses:
- Introduced a
fullReceipt
flag for endpoints returning transaction or recipient data. - When set to
true
, additional output and logs fields are included in the response.
- Introduced a
- Testing & Example Scripts:
- Prepared an E2E testing script for Viem.js and Ethers.js (excluding Web3.js due to its deprecation).
- Developed a MetaMask example script using Wagmi.
The upcoming work will focus on supporting data retrieval for older blocks in methods with default parameters to ensure full MetaMask compatibility. Additionally, we will implement improvements based on feedback from the ARK Scan and ARK Vault teams.
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.