> For the complete documentation index, see [llms.txt](https://nomos-docs.gitbook.io/nomos-1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://nomos-docs.gitbook.io/nomos-1/readme/getting-started/setting-up-your-environment.md).

# Setting Up Your Environment

Before you dive into developing and interacting with CosmWasm contracts within the **Nomos** monorepo, follow these steps to set up your development environment.

## Prerequisites

Make sure you have the following prerequisites installed on your machine:

* **Rust**: Ensure that you have rust installed. You can install it from its main [website](https://www.rust-lang.org/tools/install).
* **Git**: If Git is not installed, you can download it from [git-scm.com](https://git-scm.com/).
* **Archway CLI**: Follow [these steps](https://docs.archway.io/developers/developer-tools/developer-cli) to make the installation

## Installation Steps

Follow these steps to set up your environment for CosmWasm contract development:

1. **Clone the Monorepo**:

   Open your terminal and navigate to the directory where you want to store the monorepo:

   ```sh
   git clone https://github.com/chelofinance/Nomos-archway-mult0isig.git nomos
   cd nomos
   ```
2. **Install Dependencies**:

   Move to the `contracts` folder inside the monorepo. Youll see two folders called factory and multisig.

   ```sh
   cd contracts && ls
   ```

   Install the required dependencies by running:

   ```sh
   cd <factory | multisig> 
   ```

   then run this to download the packages and compile:

   ```sh
   cargo build
   ```
3. **Configure Archway CLI**:

   Follow the steps specified on the archway documentation to create a wallet and fund it on their faucet.
4. **Compile Contracts**:

   From the folder you are working on compile the contracts

   ```sh
   archway build --optimize
   ```
5. **Test Contracts**:

   Ensure that the contracts are working as expected by running tests:

   ```sh
   cargo test
   ```

By following these steps, you'll have your environment set up to work with the **Nomos** contracts, enabling you to develop and interact with CosmWasm contracts efficiently.
