# Overview，What are snapps?

By [MinaWallet](https://paragraph.com/@minawallet) · 2021-12-29

---

Overview
========

![](https://storage.googleapis.com/papyrus_images/41a871d2fbb9550f435510febf2416e1ee1534802ebd5607d7bb9bf4d2b729a8.png)

### What are snapps?

Snapps (“snark apps”) are Mina’s **zk-SNARK**\-powered smart contracts.

Snapps use an **off-chain execution** and mostly **off-chain state** model. This allows for private computation and state that can be either private or public.

Using zk-SNARKs, snapps can perform arbitrarily complex computations off chain while incurring only a flat fee to send the resulting zero-knowledge proof to the chain, as opposed to other blockchains which use a gas-fee based model.

![](https://storage.googleapis.com/papyrus_images/065836729e03b1df03cb50ab37edc6acfc1f1ec68631819e9fff960767aa479d.jpg)

You can learn more on the how snapps work page.

### TypeScript

Snapps are written in TypeScript.

TypeScript provides an easy, familiar language (JavaScript), but with added type safety, making it easy to get started writing Snapps.

You can learn more on the how to write a snapp page.

### Examples of snapps

Play around with a few example snapps to see what’s possible:

![](https://storage.googleapis.com/papyrus_images/91a7bc44190fa4bab3fc00a2bcbbd492ab29aac8e88fc67b0feb364e78bd6cdf.jpg)

### Learn more

Join the [#snapps-general](https://discord.gg/ecGMxs8N) channel on Discord.

On the upcoming pages, you can read about how snapps work, how to write a snapp, and see our Snapps for Ethereum devs (_coming soon_) page.

---

*Originally published on [MinaWallet](https://paragraph.com/@minawallet/overview-what-are-snapps)*
