Get Ready To Build | Algorand Developer Portal
Get Ready To Build
Hello, Developer! Welcome to Algorand!
This guide will help you set up your development environment and create your first Algorand project with AlgoKit. By the end of this guide, you’ll be set up to tackle the rest of the tutorials we have for you.
But first, what is AlgoKit?
AlgoKit is a developer toolbox for building on Algorand.
It provides a curated set of tools that work well together while still letting you stay in control. Use only what you need! Whether you’re writing a script, experimenting locally, or building a full application.
With support for TypeScript and Python, you can build smart contracts and interact with the chain using familiar languages, without losing access to lower-level primitives when needed.
Out of the box, AlgoKit provides:
- CLI (Command Line Interface) utilities for interacting with the network and managing projects
- A LocalNet environment for running a full Algorand network on your machine
- Language tooling for TypeScript and Python development
- Helpers and utilities for working with accounts, transactions, and assets
If you want to learn more about AlgoKit before diving in, check out the documentation linked below, and when you’re ready, head to the next section.
AlgoKit Intro to AlgoKit
Prerequisites
Before installing AlgoKit, make sure you have the following:
- Python 3.12 or higher
- PipX
- Git
- Docker
- VSCode (recommended)
Recommended IDE (Intergrated Development Environment) Extensions
To maximize your Algorand smart contract development experience, install dedicated Visual Studio Code extensions for Python and TypeScript. These extensions work alongside standard language servers to provide Algorand-specific validation, diagnostics, and code automation, so you get instant feedback and fixes as you write contracts.
Requirements:
- Visual Studio Code 1.80.0 or higher
- puya-ts 1.0.1 or higher
Quick Start
Install this Algorand TypeScript language extension
Install the puya-ts package. We recommend adding it as a project dev dependency.
Enable the Algorand TypeScript language server (
algorandTypeScript.languageServer.enable) for your workspace (not required if using a new AlgoKit project)Open an Algorand TypeScript smart contract file (.algo.ts)
Configuration
Configure the language server with the following features:
algorandTypeScript.languageServer.enable: Enables the Algorand TypeScript language server. By default, the language server is disabled.algorandTypeScript.languageServer.logLevel: Configures the verbosity of the messages Algorand TypeScript language server displays in the output window.
For more details, refer to Typescript - Visual Studio Marketplace
The Algorand Python language extension brings language server-powered capabilities to your smart contract authoring experience in Visual Studio Code. It extends the results from your installed Python language server to provide Algorand Python-specific diagnostics and code actions.
Requirements:
- Visual Studio Code 1.80.0 or higher
- Python extension for Visual Studio Code
- Python 3.12 or higher
- PuyaPy 5.3.0 or higher
Quick Start
Install the Python extension for Visual Studio Code
Install the Algorand Python language extension
Install the PuyaPy package on your system. We recommend installing as a project dev dependency in your project venv.
Enable the Algorand Python language server (
algorandPython.languageServer.enable) for your workspace (not required if using a new AlgoKit project)Open a Python smart contract file (.py)
Configuration
Configure the language server with the following features:
algorandPython.languageServer.enable: Enables the Algorand Python language server. By default, the language server is disabled.algorandPython.languageServer.logLevel: Configures the verbosity of the messages Algorand Python language server displays in the output window.algorandPython.languageServer.debounceInterval: Configures the delay between receiving a code change and refreshing related diagnostics.
For more details, refer to Python - Visual Studio Marketplace
Install AlgoKit
- To install AlgoKit, run the following command from a terminal.
pipx install algokit
```
2. If you used AlgoKit before, update it with pipx:
pipx upgrade algokit
```
- After the installation completes, restart the terminal.
Verify the Installation
To verify AlgoKit is installed correctly, run the following command:
algokit --version
Output similar to the following should be displayed:
algokit, version 2.6.0
Start a LocalNet
When building smart contracts, it is recommended to build and test on a local Algorand blockchain running on your computer first. Deploying and calling smart contracts on MainNet (the live public blockchain for production) costs real money. Deploying on TestNet (a replica of MainNet for testing) can slow down the iteration cycle of early projects. Therefore, it is recommended to first test on a local blockchain. Once everything works, move to TestNet for final testing, and then deploy to MainNet to launch your application.
AlgoKit supports using a local version of the Algorand blockchain. To start an instance of this LocalNet, first open Docker Desktop on your computer and then run the following command from the terminal:
algokit localnet start
This should start an instance of the LocalNet within Docker.
Create an AlgoKit project
Now, let’s create an Algorand project with AlgoKit. We will refer to these projects as “AlgoKit projects.” AlgoKit provides a series of templates for you to use depending on the type of project you want to create.
This guide will walk you through using either the TypeScript or Python smart contract starter template. Choose the language that you are most comfortable with.
For this guide, we will use the TypeScript smart contract starter template.
- To create a new AlgoKit project, you can easily do so by running:
algokit init
```
This launches an interactive setup. You will first be prompted to select the type of project you want to create. For this quick start guide, we will use the TypeScript smart contract template, so select the **Smart Contracts** option.
2. Next, AlgoKit will ask you what programming language you want to use for the smart contract. Let’s select **TypeScript** as our smart contract language by pressing Enter.
3. Then AlgoKit will ask you for the name of the project. Let’s name it **hello-algorand**, but if you want to name it differently, feel free to do so! After entering the name, press Enter to continue.
4. Next, you can set the name of the smart contract. We will keep it as it is for now.
5. Next, you can select the template preset. The **Starter** preset is for quickly implementing and testing certain features, whereas the **Production** preset is for production-ready applications. For this guide, let’s select **Starter**.
6. Then choose whether you want to run the `algokit project bootstrap` command to install the necessary dependencies. Say yes by pressing “y”. This process can take a few minutes.
7. Finally, AlgoKit will ask you if you want to initialize a Git repository. Let’s say yes by pressing “y” so that we can easily push our AlgoKit project to GitHub.
8. Once finished, VS Code should automatically be opened with the initialized project if VS Code is set as your default editor. If not, `cd` into the project directory and open the project in your IDE of choice.
9. This starter app contains one smart contract written in [Algorand TypeScript](https://dev.algorand.co/concepts/smart-contracts/languages/typescript) named `HelloWorld` in the `smart_contracts/hello_world/contract.algo.ts` file. The contract has a method called `hello` that takes in a `String` and returns a `String`.
## Before Moving On
At this point, you should have:
- A running LocalNet
- A generated project
- Dependencies installed
If not, go back and double check the above steps before continuing.
## Next Steps
Great work! Now your machine should be set up with everything you need to build using AlgoKit.
We will return to this Smart contract template later on in this tutorial series, but first, we are going to take a look at one more tool that will help you throughout your development journey: (Live Onchain Resource Analyzer). When you’re ready, head to the next section.