Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
Philip Halsall committed Jul 20, 2023
2 parents 8fcef2e + 5dc327e commit 2306483
Show file tree
Hide file tree
Showing 186 changed files with 22,055 additions and 19,717 deletions.
8 changes: 3 additions & 5 deletions .github/workflows/snarkyjs-api-reference.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,8 @@ jobs:
npm ci && npm run build
cd src/mina-signer && npm ci && npm run build && cd ../../
# Install markdown-plugin for typedoc and build the SnarkyJS API reference
npm install typedoc-plugin-markdown
npx typedoc --readme none --name SnarkyJS --plugin typedoc-plugin-markdown --out snarkyjs-reference src/index.ts --hideBreadcrumbs true
rm snarkyjs-reference/.nojekyll
# Build API reference docs
npm run build:docs
# Install dependencies for Docs repo
cd ../docs/ && npm ci
Expand All @@ -45,7 +43,7 @@ jobs:
rm -rf docs/zkapps/snarkyjs-reference && cp -rv ../snarkyjs/snarkyjs-reference docs/zkapps/snarkyjs-reference
# Update with new enteries and format sidebars.js
node update-sidebars-snarkyjs-api.js && npx prettier --config .prettierrc --write sidebars.js
npm run update-sidebar
# Configure git and push
BRANCH_NAME=docs/snarkyjs-api-reference-$(git --git-dir ../snarkyjs/.git rev-parse --short HEAD)
Expand Down
36 changes: 23 additions & 13 deletions algolia-config.json
Original file line number Diff line number Diff line change
@@ -1,24 +1,28 @@
{
"index_name": "mina",
"start_urls": ["https://docs.minaprotocol.com"],
"start_urls": [
{
"url": "https://docs.minaprotocol.com"
}
],
"sitemap_urls": ["https://docs.minaprotocol.com/sitemap.xml"],
"sitemap_alternate_links": true,
"js_render": true,
"stop_urls": ["/tests"],
"js_wait": 1,
"stop_urls": ["https://docs.minaprotocol.com/node-developers"],
"selectors_exclude": ["footer"],
"selectors": {
"lvl0": {
"selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[last()]",
"type": "xpath",
"global": true,
"default_value": "Documentation"
"selector": "",
"defaultValue": "Documentation"
},
"lvl1": "header h1",
"lvl2": "article h2",
"lvl3": "article h3",
"lvl4": "article h4",
"lvl5": "article h5, article td:first-child",
"lvl6": "article h6",
"text": "article p, article li, article td:last-child"
"lvl1": "header h1, article h1, main h1, h1, head > title",
"lvl2": "article h2, main h2, h2",
"lvl3": "article h3, main h3, h3",
"lvl4": "article h4, main h4, h4",
"lvl5": "article h5, main h5, h5",
"lvl6": "article h6, main h6, h6",
"text": "article p, article li, main p, main li, p, li"
},
"strip_chars": " .,;:#",
"custom_settings": {
Expand All @@ -31,6 +35,12 @@
"url",
"url_without_anchor",
"type"
],
"synonyms": [
["js", "javascript"],
["ts", "typescript"],
["es6", "ECMAScript6", "ECMAScript2015"],
["zk", "zero-knowledge", "zero knoweldge"]
]
},
"conversation_id": ["833762294"],
Expand Down
5 changes: 0 additions & 5 deletions docs/about-mina/Advanced/cryptography.md

This file was deleted.

4 changes: 3 additions & 1 deletion docs/about-mina/consensus.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
title: Consensus
---

import ResponsiveVideo from '@site/src/components/common/ResponsiveVideo';

# Consensus

Mina Protocol uses a proof-of-stake consensus mechanism called **Ouroboros Samasika**.
Expand All @@ -10,7 +12,7 @@ Consensus is the process by which the network determines which information is re

Learn more about how Ouroboros Samasika works in this video:

[![What is Ouroboros Samisika?](https://res.cloudinary.com/marcomontalbano/image/upload/v1661971904/video_to_markdown/images/youtube--NpjuGYcJICA-c05b58ac6eb4c4700831b2b3070cd403.jpg)](https://www.youtube.com/watch?v=NpjuGYcJICA "What is Ouroboros Samisika?")
<ResponsiveVideo src="https://www.youtube.com/embed/NpjuGYcJICA" />

### Decentralization properties
Based on Cardano’s PoS Ouroboros, Ouroboros Samisika is a secure PoS protocol with some strong decentralization properties:
Expand Down
33 changes: 26 additions & 7 deletions docs/about-mina/faq.mdx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: FAQ
title: Mina FAQ
---

import Subhead from "@site/src/components/common/Subhead";

# FAQ
# Mina FAQ


<Subhead>
Expand All @@ -17,24 +17,43 @@ The Mina node is written in OCaml. But you don't need to know OCaml to write sma

### What language are zkApp smart contracts written in?

Mina's zero knowledge smart contracts ("zkApps") are written in TypeScript.
Mina's zero knowledge smart contracts (zkApps) are written in TypeScript.

Learn more about [how to write a zkApp](/zkapps/how-to-write-a-zkapp).

### How large is the Mina Blockchain?

22KB
22 KB

### Given Mina is only 22KB, where are past transactions stored?
### Given Mina is only 22 KB, where are past transactions stored?

The Mina node can run with an optional flag to make it an archive node. This means it stores historic transactions, which is useful for anyone running a service such as a block explorer. Still, this data is not needed in order to verify the current consensus state of the protocol.
A Mina node can run with an optional flag to make it an archive node to store historic transactions. Archive nodes are useful for anyone running a service such as a block explorer. Still, this historical data is not required to verify the current consensus state of the protocol.

### What ZK proof system does Mina use?
### What zk proof system does Mina use?

Mina Protocol uses a custom proof system called Kimchi, which was developed by [O(1) Labs](https://o1labs.org/), and is the only blockchain offering infinite recursion.

Check out the [Mina Book](https://o1-labs.github.io/proof-systems/plonk/overview.html) to learn more about Kimchi and the cryptography powering Mina Protocol.

### What can I do on the Mina network?

Any node can send and receive transactions on the Mina network. Any node can also choose to be a node operator. See [Node Operators](/node-operators).

### What consensus algorithm does Mina use?

Mina's consensus mechanism is an implementation of Ouroboros Proof-of-Stake. Due to Mina's unique compressed blockchain, certain aspects of the algorithm have diverged from the Ouroboros papers. The version Mina uses is called Ouroboros Samisika.

#### Is there a Mina block explorer?

Yes, check out these block explorers:

- https://minaexplorer.com/
- https://minascan.io

### How does Mina achieve scalability?

Mina achieves scalability through the use of recursive zk-SNARKs. By generating a proof that attests to the validity of historic blockchain states, Mina can keep the blockchain size fixed. This allows for increased throughput due to block size limits not being as taxing on the network, thereby increasing the scalability of the network.

### What security audits have been completed?

You can review the results of the completed security audits here:
Expand Down
4 changes: 2 additions & 2 deletions docs/about-mina/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ Watch this [video to learn about zero-knowledge proofs](about-mina/what-are-zero

### What are zkApps?

Minas zero-knowledge smart contracts are referred to as zkApps. zkApps provide powerful and unique characteristics such as unlimited off-chain execution, privacy for private data inputs that are never seen by the blockchain, the ability to write smart contracts in TypeScript, & more.
Mina's zero-knowledge smart contracts are referred to as zkApps. zkApps provide powerful and unique characteristics such as unlimited off-chain execution, privacy for private data inputs that are never seen by the blockchain, the ability to write smart contracts in TypeScript, and more.

Learn more about how [zkApps work](/zkapps).
See [zkApps Overview](/zkapps).

### How does consensus work on Mina?

Expand Down
13 changes: 4 additions & 9 deletions docs/about-mina/protocol-architecture.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,21 @@ title: Protocol Architecture
hide_title: true
---

import ResponsiveVideo from '@site/src/components/common/ResponsiveVideo';

:::note

A new version of Mina Docs is coming soon! This page will be rewritten.

:::

# Protocol Architecture

## How Does it Work?

Check out this short video explaining how the Mina protocol works in detail:

<iframe
id="youtube-iframe"
width="560"
height="315"
src="https://www.youtube-nocookie.com/embed/eWVGATxEB6M?start=100&enablejsapi=1&rel=0"
frameborder="0"
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
></iframe>
<ResponsiveVideo src="https://www.youtube-nocookie.com/embed/eWVGATxEB6M?start=100&enablejsapi=1&rel=0" />

### Timestamps

Expand Down
6 changes: 4 additions & 2 deletions docs/about-mina/what-are-zero-knowledge-proofs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@
title: What are Zero-Knowledge Proofs?
---

import ResponsiveVideo from '@site/src/components/common/ResponsiveVideo';

# What are Zero-Knowledge Proofs?

Zero-knowledge proofs keep Mina's blockchain light and your personal data private.
Zero-knowledge proofs keep Mina's blockchain light and your personal data private.

In this video, Brandon from <a href="https://o1labs.org/">O(1) Labs</a> explains what zero-knowledge proofs are by comparing them to the game of "Where's Waldo?". By the end of this video, you know what zero-knowledge proofs are, how they work, and their importance to Mina and the greater crypto community.

[![What are Zero Knowledge Proofs? | Mina Protocol](https://res.cloudinary.com/marcomontalbano/image/upload/v1660337712/video_to_markdown/images/youtube--GvwYJDzzI-g-c05b58ac6eb4c4700831b2b3070cd403.jpg)](https://www.youtube.com/watch?v=GvwYJDzzI-g "What are Zero Knowledge Proofs? | Mina Protocol")
<ResponsiveVideo src="https://www.youtube.com/embed/GvwYJDzzI-g" />
Loading

0 comments on commit 2306483

Please sign in to comment.