Skip to content

Commit

Permalink
rework docs to fit new vision (#83)
Browse files Browse the repository at this point in the history
* feat: push new docs

* fix particle link

* feat add envio

* rework categories

* fix button

* fix: fix faucet mention

* new structure

* rework intro

* change background to offwhite

* fix link

* add new chainID

* fix new chainID
  • Loading branch information
Eikix authored Oct 10, 2024
1 parent 4126de0 commit 50ffc43
Show file tree
Hide file tree
Showing 44 changed files with 995 additions and 425 deletions.
12 changes: 7 additions & 5 deletions .trunk/trunk.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml
version: 0.1
cli:
version: 1.22.5
version: 1.22.6
# Trunk provides extensibility via plugins. (https://docs.trunk.io/plugins)
plugins:
sources:
- id: trunk
ref: v1.6.2
ref: v1.6.3
uri: https://github.com/trunk-io/plugins
# Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes)
runtimes:
Expand All @@ -17,15 +17,17 @@ runtimes:
# This is the section where you manage your linters. (https://docs.trunk.io/check/configuration)
lint:
enabled:
- checkov@3.2.255
- checkov@3.2.257
- git-diff-check
- markdownlint@0.42.0
- osv-scanner@1.8.5
- markdownlint@0.42.0
- osv-scanner@1.9.0
- oxipng@9.1.2
- prettier@3.3.3
- svgo@3.3.2
- trivy@0.55.2
- trufflehog@3.82.5
- trivy@0.56.1
- trufflehog@3.82.7
actions:
disabled:
- trunk-announce
Expand Down
8 changes: 0 additions & 8 deletions docs/ecosystem/account-abstraction/_category_.json

This file was deleted.

26 changes: 0 additions & 26 deletions docs/ecosystem/account-abstraction/particle.md

This file was deleted.

44 changes: 0 additions & 44 deletions docs/ecosystem/data-indexers/envio.md

This file was deleted.

15 changes: 0 additions & 15 deletions docs/ecosystem/data-indexers/ponder.md

This file was deleted.

73 changes: 0 additions & 73 deletions docs/ecosystem/oracles/pyth.md

This file was deleted.

135 changes: 20 additions & 115 deletions docs/index.mdx
Original file line number Diff line number Diff line change
@@ -1,126 +1,31 @@
---
title: Quick start - Kakarot on Starknet
title: A gentle introduction to Kakarot, the provable EVM
sidebar_position: 1
---

## What is Kakarot on Starknet?
## Welcome to our documentation v2

Kakarot Labs has developed an EVM built in [Cairo](https://www.cairo-lang.org/),
the provable language that powers [Starknet](https://starkware.co/starknet/) and
all the StarknetOS chains (also called CairoVM chains, or Starknet appchains).
Welcome to our new documentation! We've updated it to reflect our roadmap and
vision for the coming years: accelerating the adoption of ZK in
Ethereum-equivalent blockchain infrastructure. Kakarot is a verifiable EVM, and
KKRT Labs is bringing it to [Starknet L2](./starknet/overview) as well as to all
[EVM chains](./keth) - L1 and rollups alike.

Kakarot enhances and extends Starknet by making it a MultiVM environment.
Starknet effectively becomes EVM compatible; allowing the use of both CairoVM
and EVM for builders & users. Additionally, Kakarot
[strives to push more innovations](https://ethcc.io/archive/Kakarot-zkEVM-beyond-ethereum-compatibility)
to the L2 space, participating in governance initiative such as
[Rollup Improvement Proposals](https://github.com/ethereum/RIPs) (RIPs) and
[Rollcall](https://github.com/ethereum/pm/issues/1071#issuecomment-2221171582).
## Introduction

## How can I use Kakarot?
KKRT Labs is building Kakarot, the most lightweight and efficient EVM proving
engine, in order to power the “STARKification” of all EVM execution. Kakarot is
built on Cairo, Starkware’s STARK-friendly ZK-VM.

As a user and developer, you can interact with Starknet MultiVM thanks to
Kakarot in the same way you would interact with Ethereum mainnet or any other
Ethereum-based chain (use Metamask, Rainbow, build with Foundry or Hardhat,
etc.). **Change the RPC URL and it "just works"**. That being said, Kakarot is
still in alpha testnet phase 🚧 and unexpected behavior may still occur. Reach
out to us on [discord](https://discord.gg/kakarotzkevm) to report bugs 🐛.
KKRT Labs packages this provable EVM into four different applications.

Though we aim at no difference at all between Ethereum and Kakarot ZK-EVM — and
we actually work toward passing 100% of the
[official Ethereum Foundation test](https://github.com/ethereum/tests) — they
are currently some small difference recorded in the
[differences between Kakarot and Ethereum](differences) page in this
documentation website.
| Component | Description |
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| **[Starknet MultiVM](./starknet/overview)** | EVM execution on Starknet L2, making Starknet EVM compatible and thus a MultiVM ZK-rollup. |
| **[K Stack](./keth/kstack)** | An EVM-compatible ZK-appchain modular stack composable with Starknet Appchains or Reth-based rollups |
| **[Keth](./keth)** | A chain-agnostic EVM proving service. Prove billions of EVM blocks from L1 and L2 networks. |
| **[KBTC](./keth/kbtc)** | The first-ever EVM proving engine verifiable on Bitcoin, facilitating scaling for Bitcoin L1. |

### As a user, how can I interact with Kakarot on Starknet?
> Diagram - Kakarot proving engine has four applications
Head over to the [survival guide](survival-guide) section to find useful links
for our alpha testnet. Again, change the network to Kakarot in your wallet and
it should "just work".

#### Adding Kakarot Sepolia to Metamask

You can add Kakarot Sepolia to Metamask by clicking the button below:

export const AddKakarotNetwork = () => (
<button
onClick={async () => {
const params = [
{
chainId: "0x6B6B7274",
chainName: "Kakarot Sepolia",
nativeCurrency: {
name: "Ether",
symbol: "ETH",
decimals: 18,
},
rpcUrls: ["https://sepolia-rpc.kakarot.org"],
blockExplorerUrls: [
"https://sepolia.kakarotscan.org/",
"https://sepolia-blockscout.kakarot.org",
],
},
];
try {
// Note: if chain is already added, returns `null` and won't error out
await window.ethereum.request({
method: "wallet_addEthereumChain",
params,
});
} catch (error) {
// TODO: Add User feedback (e.g. Toast message) in case of error
console.error(error);
}
}}
className="button button--primary button--md padding-horiz--md padding-vert--md margin--md margin-bottom--lg"
>
🦊 Add Kakarot Sepolia to Metamask 🦊
</button>
);

<AddKakarotNetwork />

Or by add a new network manually to Metamask: open the Metamask extension. Click
"Add Network". Choose "Add a Network Manually". Then fill the fields:

| Category | Value |
| -------------- | -------------------------------- |
| Network Name | Kakarot Sepolia |
| RPC URL | https://sepolia-rpc.kakarot.org |
| Chain Id | 1802203764 |
| Symbol | ETH |
| Block Explorer | https://sepolia.kakarotscan.org/ |

### As a developer, how can I build on Kakarot ZK-EVM?

For developers as well, change the RPC URL, and it should "just work".

In case you encounter some unknown bug or want to discuss new features, you can:

- Join our discord and get support: https://discord.gg/kakarotzkevm
- Ask us anything on Twitter: https://twitter.com/KakarotZkEvm

## What differentiates Kakarot on Starknet?

1. Agile and lightweight: Kakarot's core EVM is built on Cairo, a provable VM,
enabling cryptography efforts to be separated from engineering. As a result,
Kakarot's code is lean, highly auditable and easily extensible. A strong
example is the
[EOF set of Ethereum Improvement Proposals probably coming in Pectra](https://x.com/_weidai/status/1816019532890444216),
which are easy to implement for Kakarot and extremely hard for circuit-based
ZK-EVMs.

2. Interoperable and modular: Kakarot enables a MultiVM environment on Starknet
chains. Solidity contracts can call into Cairo programs, and vice-versa.
Starknet apps can gain exposure to EVM ecosystems, and EVM apps can finally
land on Starknet for minimal costs.

3. Highly-performant and future-proof: Building on Kakarot means benefiting from
all the future upgrades of the Cairo stack. For instance, with the release of
[Stwo](https://github.com/starkware-libs/stwo), an extremely fast prover by
Starkware expected in early 2025, Kakarot apps will directly experience
100-1,000x improvements in ZK proof generation performance.

For a deep-dive into the Kakarot design, check out
[the architecture overview](architecture/understanding-zkevm).
![Kakarot proving engine has four applications](../static/diagrams/kakarot_applications.png)
8 changes: 8 additions & 0 deletions docs/keth/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"label": "Keth - EVM prover",
"position": 4,
"link": {
"type": "generated-index",
"description": "Introduce Provability of all EVM Execution in the Ethereum Ecosystem - Prove billions of EVM blocks"
}
}
Loading

0 comments on commit 50ffc43

Please sign in to comment.