# How To Guides


Welcome to the **How-To Guides** — your one-stop resource for building on the **Somnia Network**.

This section is designed to help developers of all experience levels onboard quickly, understand the tools available to them, and start shipping powerful dApps on Somnia.

Somnia offers a high-performance Layer 1 blockchain with blazing-fast finality, high throughput, and robust developer tooling. Whether you're deploying your first smart contract, building out a full-stack decentralized application, or integrating advanced tooling like oracles, subgraphs, and SDKs — you're in the right place.

Our guides are **practical, up-to-date, and hands-on**, focused on real implementations that will help you go from zero to deployed faster than ever.

> **Tip**
>
> **Developers who are deploying Smart Contracts and need Somnia Test Tokens (STT):**\
> \
> Please join the [Discord](https://discord.com/invite/somnia). Go to the `#dev-chat` channel, tag the Somnia DevRel, `@emreyeth` and request Test Tokens.\
> \
> You can also join the [Somnia Developer Telegram](https://t.me/+s_oRMnGpOyQ3ODQ0) or use [Faucet](https://explorer.testnet.somnia.network/faucet).\
> \
> You can also email `developers@somnia.foundation` with a brief description of what you are building and your GitHub profile.


***

The guides are grouped by **theme and difficulty**, so you can explore what’s most relevant to your project or level of expertise:

## Basics

Learn how to:

* Deploy smart contracts on Somnia using [RemixIDE](./development-frameworks/deploy-with-remixide), [Hardhat](./development-frameworks/deploy-with-hardhat), or [Foundry](./development-frameworks/deploy-with-foundry)
* [Verify your contracts on Somnia](./development-frameworks/deploy-with-hardhat)
* [Create ERC20 Tokens on Somnia](./building-dapps/tokens-and-nfts/create-erc20-tokens)

## Intermediate

Move beyond the basics by building full-stack applications.

* [Learn how to connect Web UI with Smart Contracts using Viem](./development-frameworks/using-the-viem-library)
* [How to Set Up MetaMask for use with Somnia](./building-dapps/wallet-integration-and-auth/authenticating-with-metamask)
* [How to Use Native Somnia Tokens: SOMI (STT - Testnet](./building-dapps/tokens-and-nfts/using-native-somi-stt))

## Advanced

**Build Complete dApp experiences**

* [Create a DAO: Smart Contract Guide](./building-dapps/example-applications/dao-smart-contract)
* [Set Up the Web UI for DAO Smart Contract](./building-dapps/example-applications/dao-ui-tutorial-p1)
* [Set Up READ Operations for DAO Smart Contract](./building-dapps/example-applications/dao-ui-tutorial-p2)
* [Set Up WRITE Operations for DAO Smart Contract](./building-dapps/example-applications/dao-ui-tutorial-p3)
* [Build a Subgraph UI using Apollo Client](./building-dapps/data-indexing-and-querying/building-subgraph-uis-apollo-client)
* [Build a DEX on Somnia](./building-dapps/example-applications/building-a-simple-dex-on-somnia)
* [Somnia WebSockets](./building-dapps/data-indexing-and-querying/listening-to-blockchain-events-websocket)

## Oracles

Bring off-chain data on-chain with:

* [How to integrate **DIA price feeds** on Somnia](./building-dapps/oracles/dia-price-feeds)
* [How to implement **Protofire Price Feeds**](./building-dapps/oracles/protofire-price-feeds)
* [How to implement **Verifiable Randomness (VRF)** via **Protofire + Chainlink**](./building-dapps/oracles/using-verifiable-randomness-vrf)

## Subgraphs

Efficiently query and index onchain data.

* [How to create and deploy subgraphs on Somnia using **ORMI**](./building-dapps/data-indexing-and-querying/ormi-subgraph)
* [How to build with **Protofire’s subgraph infrastructure**](./building-dapps/data-indexing-and-querying/protofire-subgraph)
* [Frontend integrations for building responsive UIs from your subgraph data](./building-dapps/data-indexing-and-querying/building-subgraph-uis-nextjs-fetch)

## Thirdweb

A seamless wallet experience is key to user adoption. Somnia integrates with modern wallet providers to help you build dApps that feel intuitive and onboarding-friendly.

This section covers:

* [How to deploy Smart Contracts using **Thirdweb on** Somnia](./development-frameworks/deploy-with-thirdweb)
* [Using **Thirdweb Wallet SDK** for seamless Web3 UX](./building-dapps/account-abstraction/smart-wallet-app-with-thirdweb)
* [How to enable gasless transactions via **Account Abstraction**](./building-dapps/account-abstraction/gasless-transactions-with-thirdw)

## Wallets

Accelerate development with partner SDKs.

* [Integrate **Privy** for embedded, Web2-friendly wallet flows](./building-dapps/wallet-integration-and-auth/authenticating-with-privy)
* [Use **RainbowKit** to offer a beautiful, customizable wallet connection UI](./building-dapps/wallet-integration-and-auth/authenticating-with-rainbowkit)
* [Leverage **ConnectKit** for flexible and extensible wallet integrations](./building-dapps/wallet-integration-and-auth/authenticating-with-connectkit)

## APIs

Use available APIs to enhance your application:

* [How to use **ORMI’s Data API** to query blockchain state](./building-dapps/data-indexing-and-querying/using-data-apis-ormi)

***

Somnia’s developer ecosystem is growing rapidly — and with that, so is the tooling. These guides are updated frequently to reflect new partnerships, infra improvements, and best practices.

If you're a developer who wants to build **fast, scalable, and secure** dApps, **Somnia is your playground**. And these guides are your map.

---

Every page is also Markdown: append `.md` to its URL, or ask for `text/markdown`. Found something wrong, missing or confusing in these docs? Tell us: `POST /api/feedback` on this site with JSON `{"message": "…", "context": "what you were doing and what happened", "page": "…"}`, or a plain-text body. `GET /api/feedback` gives the JSON Schema. The team reads every one.
