```{eval-rst} .. _resources-repository-overview: ``` # Repository Overview > 📘 Change to monorepo > > Dash Platform v0.21 migrated to a [monorepo](https://en.wikipedia.org/wiki/Monorepo) structure to streamline continuous integration builds and testing. A number of the libraries below were previously independent repositories but now are aggregated into the [`packages` directory](https://github.com/dashevo/platform/tree/master/packages) of the monorepo (). ## js-dash-sdk Dash client-side JavaScript library for application development and wallet payment/signing. Uses wallet-lib, dapi-client, and dashcore-lib to expose layer-1 and layer-2 functionality. Main user is app developers. npm: `dash` [Repository](https://github.com/dashevo/platform/tree/master/packages/js-dash-sdk) ## js-dapi-client Client library for accessing [DAPI Endpoints](../reference/dapi-endpoints.md) . Enables interaction with Dash platform through the [DAPI](../explanations/dapi.md) hosted on masternodes. Provides automatic masternode discovery starting from any initial masternode. npm: `@dashevo/dapi-client` [Repository](https://github.com/dashevo/platform/tree/master/packages/js-dapi-client) ## dapi A decentralized API for the Dash network. Exposes endpoints for interacting with the layer 1 blockchain and layer 2 platform services. [Repository](https://github.com/dashevo/platform/tree/master/packages/dapi) ## js-dpp JavaScript implementation of [Dash Platform Protocol](../explanations/platform-protocol.md). Performs validation of all data submitted to the platform. npm: `@dashevo/dpp` [Repository](https://github.com/dashevo/platform/tree/master/packages/js-dpp) ## Supporting Repositories ### drive Manages the platform state and provides decentralized application storage on the Dash network. [Repository](https://github.com/dashevo/platform/tree/master/packages/js-drive) ### dashcore-lib A JavaScript Dash library npm: `@dashevo/dashcore-lib` Repository: ### grove-db A hierarchical authenticated data structure. The construction is based on [Database Outsourcing with Hierarchical Authenticated Data Structures](https://eprint.iacr.org/2015/351.pdf). [Repository](https://github.com/dashevo/grovedb) ### wallet-lib An extensible JavaScript Wallet Library for Dash. Provides layer 1 SPV wallet functionality. npm: `@dashevo/wallet-lib` [Repository](https://github.com/dashevo/platform/tree/master/packages/wallet-lib) ### dapi-grpc Decentralized API gRPC definition files and generated clients. Used by clients (e.g. dapi-client) to interact with DAPI endpoints. npm: `@dashevo/dapi-grpc` [Repository](https://github.com/dashevo/platform/tree/master/packages/dapi-grpc) ### dash-network-deploy Tool for assisting Dash devnet network deployment and testing. ### platform-test-suite Test suite for end-to-end testing of Dash Platform by running some real-life scenarios against a Dash Network. [Repository](https://github.com/dashevo/platform/tree/master/packages/platform-test-suite) ### rs-drive Implements secondary indices for Platform in conjunction with GroveDB. [Repository](https://github.com/dashevo/rs-drive) ### dashmate A distribution package for Dash masternode installation. [Repository](https://github.com/dashevo/platform/tree/master/packages/dashmate) ## Contract Repositories ### dashpay-contract DashPay contract documents JSON Schema [Repository](https://github.com/dashevo/platform/tree/master/packages/dashpay-contract) ### dpns-contract DPNS contract documents JSON Schema [Repository](https://github.com/dashevo/platform/tree/master/packages/dpns-contract)