github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/docs/getting-started/local-setup/installation.md (about) 1 --- 2 id: installation 3 --- 4 5 # Installation 6 7 ## Overview 8 In this tutorial, you will learn how to set up the Gno development environment 9 locally, so you can get up and running writing Gno code. You will download and 10 install all the necessary tooling, and validate that it is correctly configured 11 to run on your machine. 12 13 ## Prerequisites 14 - **Git** 15 - **`make` (for running Makefiles)** 16 - **Go 1.19+** 17 - **Go Environment Setup**: 18 - Make sure `$GOPATH` is well-defined, and `$GOPATH/bin` is added to your `$PATH` variable. 19 - To do this, you can add the following line to your `.bashrc`, `.zshrc` or other config file: 20 ``` 21 export GOPATH=$HOME/go 22 export PATH=$GOPATH/bin:$PATH 23 ``` 24 25 ## 1. Cloning the repository 26 To get started with a local Gno.land development environment, you must clone the 27 GitHub repository somewhere on disk: 28 29 ```bash 30 git clone https://github.com/gnolang/gno.git 31 ``` 32 33 ## 2. Installing the required tools 34 35 There are three tools that should be used for getting started with Gno development: 36 - `gno` - the GnoVM binary 37 - `gnodev` - the Gno [development helper](../../gno-tooling/cli/gnodev.md) 38 - `gnokey` - the Gno [keypair manager](working-with-key-pairs.md) 39 40 To install all three tools, simply run the following in the root of the repo: 41 ```bash 42 make install 43 ``` 44 45 ## 3. Verifying installation 46 47 ### `gno` 48 `gno` provides ample functionality to the user, among which is running, 49 transpiling, testing and building `.gno` files. Read more 50 about `gnokey` [here](../../gno-tooling/cli/gno.md). 51 52 To verify the `gno` binary is installed system-wide, you can run: 53 54 ```bash 55 gno --help 56 ``` 57 58 You should get the help output from the command: 59 60  61 62 Alternatively, if you don't want to have the binary callable system-wide, you 63 can run the binary directly: 64 65 ```bash 66 cd gnovm 67 go run ./cmd/gno --help 68 ``` 69 70 ### `gnodev` 71 `gnodev` is the go-to Gno development helper tool - it comes with a built in 72 Gno.land node, a `gnoweb` server to display the state of your smart contracts 73 (realms), and a watcher system to actively track changes in your code. Read more 74 about `gnodev` [here](../../gno-tooling/cli/gnodev.md). 75 76 To verify that the `gnodev` binary is installed system-wide, you can run: 77 78 ```bash 79 gnodev 80 ``` 81 82 You should get the following output: 83  84 85 86 ### `gnokey` 87 88 `gnokey` is the Gno.land keypair management CLI tool. It allows you to create 89 keypairs, sign transactions, and broadcast them to Gno.land chains. Read more 90 about `gnokey` [here](../../gno-tooling/cli/gnokey.md). 91 92 To verify that the `gnokey` binary is installed system-wide, you can run: 93 94 ```bash 95 gnokey --help 96 ``` 97 98 You should get the help output from the command: 99 100  101 102 ## Conclusion 103 104 That's it 🎉 105 106 You have successfully built out and installed the necessary tools for Gno 107 development! 108 109 In further documents, you will gain a better understanding on how they are used 110 to make Gno work.