> For the complete documentation index, see [llms.txt](https://haiko-docs.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://haiko-docs.gitbook.io/docs/info/user-guides/introduction-to-starknet.md).

# Introduction to Starknet

## What is Starknet?

[Starknet](https://docs.starknet.io/) is a validity (or ZK) rollup operated as a Layer 2 (L2) network over Ethereum. It allows computation to be executed provably off-chain, unlocking mass scalability for on-chain applications without compromising Ethereum's security guarantees.

## Why build on Starknet?

AMMs enable trustless, peer-to-peer matching of traders and liquidity providers. However, computation on the blockchain is very expensive. This cost increases with the introduction of strategies on Sphinx, which often have complex internal logic and require frequent updates.

Validity rollups and in particular STARKs provide an elegant solution to this problem by providing a compute-cheap execution environment for on-chain execution. Because computation can be "rolled up" into succinct proofs that are logarithmic in size to their original execution, complex programs can now be run entirely on-chain with minimal gas overhead.

## How do I get started with Starknet (for users)?

To interact with Starknet, users must install an [Argent](https://www.argent.xyz/learn/) or [Braavos](https://braavos.app/) wallet and [bridge over](https://docs.starknet.io/documentation/architecture_and_concepts/Network_Architecture/token-bridge/) funds from Ethereum. This is because Starknet runs on its own unique VM and is not compatible with wallets like Metamask that are designed for the Ethereum Virtual Machine (EVM).&#x20;

Using a Starknet-native wallet has both its benefits and disadvantages. Although it is less convenient to install a new wallet, these wallets are able to take advantage of unique features offered by Starknet, for example [account abstraction](https://mirror.xyz/sylve.eth/Un2EYccIpfE3BDevwOf9hWWcSn2NsiRIivZlBLNX7Ag) to provide better transaction verification and recovery of lost keys.&#x20;

Starknet is home to a rich and growing ecosystem of applications. You can find a current database of the Starknet ecosystem of apps can be found [here](https://www.starknet-ecosystem.com/).

## How do I get started with Starknet (for developers)?

To learn more about the technical architecture of Starknet and setup your developer environment, check out the official [developer resources](https://www.starknet.io/en/developers) and read the [Starknet Book](https://book.starknet.io/).

To start writing and deploying smart contracts on Starknet, refer to the [Cairo Book](https://book.cairo-lang.org/).&#x20;

Cairo is a Turing-complete language for writing provable programs, inspired by Rust, and is the official language for writing smart contracts on Starknet.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://haiko-docs.gitbook.io/docs/info/user-guides/introduction-to-starknet.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
