# 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)