# Proposal for Enhancements to zkSync Era System Contracts Repository ## Introduction This proposal outlines suggested improvements for the [zkSync Era System Contracts repository](https://github.com/matter-labs/era-system-contracts). ## Proposed Changes ### 1. Clear README for Test Execution - **Objective**: Provide a detailed guide on how to run tests in the repository. - **Action**: Update the README with step-by-step instructions for running tests. ### 2. NPM Compatibility - **Objective**: Ensure compatibility with npm, in addition to Yarn. - **Action**: Investigate and resolve npm-related issues to allow seamless use with npm. ### 3. Adding Tests for Contracts - **Objective**: Develop and add tests for specific contracts currently lacking them. - **Action**: Begin with adding tests for `NonceHolder.sol`. Subsequently, focus on: - `L1Messenger.sol` - `L2EthToken.sol` - `MsgValueSimulator.sol` - `SystemContext.sol` ## Conclusion Implementing these changes will enhance the usability and reliability of the zkSync Era System Contracts repository, fostering a more robust and developer-friendly environment. [Repository Link](https://github.com/matter-labs/era-system-contracts)