Skip to content

Commit

Permalink
fix: update docs to latest from existing, update ZKsync to zkSync (#63)
Browse files Browse the repository at this point in the history
# What 💻 
* update docs to latest from existing
* update ZKsync to zkSync

# Why ✋
* Need latest info
* Name change has not happened

# Evidence 📷
Include screenshots, screen recordings, or `console` output here
demonstrating that your changes work as intended

<!-- All sections below are optional. You can uncomment any section
applicable to your Pull Request. -->

<!-- # Notes 📝
* Any notes/thoughts that the reviewers should know prior to reviewing
the code? -->

---------

Co-authored-by: Sabrina Ferguson <[email protected]>
  • Loading branch information
dutterbutter and itsacoyote authored May 16, 2024
1 parent be20471 commit 5fd8689
Show file tree
Hide file tree
Showing 171 changed files with 1,485 additions and 1,218 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ assignees: ''

---

### 🐛 Bug Report for ZKsync Docs
### 🐛 Bug Report for zkSync Docs

#### 📝 Description

Expand Down Expand Up @@ -41,4 +41,4 @@ Add any other context about the problem here. If applicable, add screenshots to

```
Paste any relevant log output here.
```
```
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: zksync-developers Discussion
url: https://github.com/ZKsync-Community-Hub/zkync-developers/discussions
url: https://github.com/zkSync-Community-Hub/zkync-developers/discussions
about: Please provide feedback, and ask questions here.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ZK Sync Docs
# zkSync Docs

Welcome to the ZK Sync Docs repository. This project serves as the community hub for ZKsync, providing comprehensive
documentation for developers. Whether you're a beginner looking to get started with ZKsync or an experienced developer
Welcome to the zkSync Docs repository. This project serves as the community hub for zkSync, providing comprehensive
documentation for developers. Whether you're a beginner looking to get started with zkSync or an experienced developer
seeking advanced guides, you'll find the resources you need here.

## Tools used
Expand Down Expand Up @@ -62,9 +62,9 @@ bun run lint:eslint

## Contributions

We welcome contributions from the community to ZKsync Docs.
We welcome contributions from the community to zkSync Docs.
If you're looking for ideas on where to start with contributing, check out the [Contribution Overview](./content/90.contributing-to-documentation/10.index.md).
To learn more on how to follow best practices when contributing to ZKsync Docs,
To learn more on how to follow best practices when contributing to zkSync Docs,
refer to the [Contribution Guidelines](./content/90.contributing-to-documentation/20.contribution-guidelines.md).
If you are writing new content to add to the docs, the [Documentation Styleguide](./content/90.contributing-to-documentation/30.documentation-styleguide.md)
can provide additional guidance.
6 changes: 3 additions & 3 deletions app.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,16 @@
*/
export default defineAppConfig({
seo: {
siteName: 'ZKsync Docs',
siteName: 'zkSync Docs',
},
header: {
links: [
{
icon: 'i-simple-icons-github',
to: 'https://github.com/matter-labs/zksync-docs',
target: '_blank',
'aria-label': 'ZKsync Docs on GitHub',
title: 'ZKsync Docs on GitHub',
'aria-label': 'zkSync Docs on GitHub',
title: 'zkSync Docs on GitHub',
},
],
},
Expand Down
16 changes: 8 additions & 8 deletions app.vue
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ useHead({
{
name: 'keywords',
content:
'Documentation, Developers, Era, ZKsync, ZK Stack, Matter Labs, rollup, ZK rollup, zero confirmation, ZKP, zero-knowledge proofs, Ethereum, crypto, blockchain, permissionless, L2, secure payments, scalable',
'Documentation, Developers, Era, zkSync, ZK Stack, Matter Labs, rollup, ZK rollup, zero confirmation, ZKP, zero-knowledge proofs, Ethereum, crypto, blockchain, permissionless, L2, secure payments, scalable',
},
{
name: 'description',
content:
'ZKsync Docs bring you all information you need about our protocol, APIs, SDKs, ZK Stack, and hyperchains. Start with our guides and tutorials, or go deep into our architecture and protocol specification.',
'zkSync Docs bring you all information you need about our protocol, APIs, SDKs, ZK Stack, and ZK Chains. Start with our guides and tutorials, or go deep into our architecture and protocol specification.',
},
{ name: 'author', content: 'https://matter-labs.io' },
],
Expand All @@ -36,14 +36,14 @@ useSeoMeta({
ogSiteName: seo?.siteName,
ogUrl: 'https://docs.zksync.io/',
ogImage: 'https://docs.zksync.io/social-card.png',
ogImageAlt: 'ZKsync — Accelerating the mass adoption of crypto for personal sovereignty.',
ogImageAlt: 'zkSync — Accelerating the mass adoption of crypto for personal sovereignty.',
ogDescription:
'ZKsync Docs bring you all information you need about our protocol, APIs, SDKs, ZK Stack, and hyperchains. Start with our guides and tutorials, or go deep into our architecture and protocol specification.',
'zkSync Docs bring you all information you need about our protocol, APIs, SDKs, ZK Stack, and ZK Chains. Start with our guides and tutorials, or go deep into our architecture and protocol specification.',
twitterImage: 'https://docs.zksync.io/social-card.png',
twitterCard: 'summary_large_image',
twitterSite: '@zksync',
twitterCreator: '@the_matter_labs',
twitterImageAlt: 'ZKsync — Accelerating the mass adoption of crypto for personal sovereignty.',
twitterImageAlt: 'zkSync — Accelerating the mass adoption of crypto for personal sovereignty.',
});
provide('navigation', navigation);
Expand All @@ -65,9 +65,9 @@ const links = computed(() => {
active: route.path.startsWith('/zk-stack'),
},
{
label: 'External Node',
to: '/external-node',
active: route.path.startsWith('/external-node'),
label: 'zkSync Node',
to: '/zksync-node',
active: route.path.startsWith('/zksync-node'),
},
{
label: 'Ecosystem',
Expand Down
2 changes: 1 addition & 1 deletion components/HeaderComponent.vue
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ const { header } = useAppConfig();
<UColorModeImage v-bind="{ class: 'h-6 w-auto', ...header?.logo }" />
</template>
<template v-else>
ZKsync
zkSync
<UBadge
label="Docs"
variant="subtle"
Expand Down
24 changes: 12 additions & 12 deletions content/00.build/00.index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,42 @@ title: Introduction
description:
---

**ZKsync Era** is a Layer 2
**zkSync Era** is a Layer 2
**[ZK rollup](/build/resources/glossary#zk-rollup)**, a trustless protocol that
uses cryptographic validity proofs to provide scalable and low-cost transactions on Ethereum.
In ZKsync Era, computation is performed off-chain and most data is stored off-chain as well.
In zkSync Era, computation is performed off-chain and most data is stored off-chain as well.
Transactions are bundled into batches before generating a validity proof.
As all validity proofs are proven on Ethereum, users enjoy the same security
warranties as in the L1.

ZKsync Era is made to look and feel like Ethereum, but with a higher throughput and lower fees.
zkSync Era is made to look and feel like Ethereum, but with a higher throughput and lower fees.
Just like on Ethereum, smart contracts are written in Solidity/Vyper and can be called using the same clients as in
other EVM-compatible chains.

You don't need to register a separate private key before using it;
ZKsync supports existing Ethereum wallets out of the box.
zkSync supports existing Ethereum wallets out of the box.

::callout{icon="i-heroicons-cube-transparent-solid" color="blue"}
If you have not connected to ZKsync Era before, you will need to
configure your wallet with the network. To add ZKsync Era, see [Connect to ZKsync Era](/build/connect-to-zksync).
If you have not connected to zkSync Era before, you will need to
configure your wallet with the network. To add zkSync Era, see [Connect to zkSync Era](/build/connect-to-zksync).
::

::card-group
::card
---
title: ZKsync 101
title: zkSync 101
icon: i-heroicons-academic-cap-solid
to: /build/zksync-101
---
Experience a quick tutorial on building and deploying smart contracts on ZKsync Era.
Experience a quick tutorial on building and deploying smart contracts on zkSync Era.
::
::card
---
title: Quickstart
icon: i-heroicons-rocket-launch-solid
to: /build/quick-start
---
Learn to build projects locally for ZKsync Era using zksync-cli.
Learn to build projects locally for zkSync Era using zksync-cli.
::
::

Expand All @@ -56,11 +56,11 @@ over transaction inputs.

:check-icon Native account abstraction with improvements over EIP4337 (implemented in Ethereum and other rollups).

You can find [more information about ZKsync Era in L2BEAT](https://l2beat.com/scaling/projects/zksync-era#stage).
You can find [more information about zkSync Era in L2BEAT](https://l2beat.com/scaling/projects/zksync-era#stage).

## Developer experience

ZKsync Era was built to provide a similar developer experience as Ethereum.
zkSync Era was built to provide a similar developer experience as Ethereum.

:check-icon Smart contracts can be written in Solidity or Vyper.

Expand All @@ -83,7 +83,7 @@ locally](https://docs.zksync.io/build/test-and-debug/getting-started.html)**.

## User experience

Interacting with applications built on ZKsync Era is seamless, cheap and fast.
Interacting with applications built on zkSync Era is seamless, cheap and fast.

- Transactions have instant confirmations and fast finality on L1.
- Transaction fees are extremely low ([average transaction costs
Expand Down
16 changes: 8 additions & 8 deletions content/00.build/01.connect-to-zksync.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
---
title: Connect to ZKsync Era
description: Step-by-step guide to connect your wallet to ZKsync Era mainnet and testnet.
title: Connect to zkSync Era
description: Step-by-step guide to connect your wallet to zkSync Era mainnet and testnet.
---

## Add ZKsync Era to your MetaMask wallet
## Add zkSync Era to your MetaMask wallet

You can add ZKsync Era to your MetaMask wallet using the buttons below:
You can add zkSync Era to your MetaMask wallet using the buttons below:

:network-adder{ network="mainnet" } :network-adder{ network="testnet" }

## Manually add ZKsync Era
## Manually add zkSync Era

To manually add ZKsync Era as a custom network in your wallet, follow these steps:
To manually add zkSync Era as a custom network in your wallet, follow these steps:

1. Find the “Add Network” option in your wallet (in MetaMask, you can find this in the networks dropdown).
1. Click on “Add Network"
1. Fill in the following details for the ZKsync Era network environments:
1. Fill in the following details for the zkSync Era network environments:

### Mainnet network details

Expand All @@ -27,4 +27,4 @@ To manually add ZKsync Era as a custom network in your wallet, follow these step

## Funding your wallet

Once you have your wallet connected to a ZKsync Era environment, [get testnet funds](/ecosystem/network-faucets) and [deploy your first smart contract](/build/zksync-101/deploy-your-first-contract)
Once you have your wallet connected to a zkSync Era environment, [get testnet funds](/ecosystem/network-faucets) and [deploy your first smart contract](/build/zksync-101/deploy-your-first-contract)
16 changes: 8 additions & 8 deletions content/00.build/05.zksync-101/1.index.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
---
title: Overview
description: Learn how to interact with ZKsync Era
description: Learn how to interact with zkSync Era
---

Welcome to ZKsync 101!
Welcome to zkSync 101!

This tutorial will help you to learn how to write, compile and deploy smart contracts to ZKsync Era.
This tutorial will help you to learn how to write, compile and deploy smart contracts to zkSync Era.
In the first step, you will build and deploy a simple contract and interact with it by sending messages.
The second section will have you creating your own ERC20 token and the final section will
introduce a specialized feature of ZKsync Era, native account abstraction and paymasters.
introduce a specialized feature of zkSync Era, native account abstraction and paymasters.

This section is designed for developers new to ZKsync Era and uses online IDE's - Remix and AtlasZK -
This section is designed for developers new to zkSync Era and uses online IDE's - Remix and AtlasZK -
to help you learn as quickly and efficiently as possible.

## Get started

- If you haven't already added ZKsync Era to your wallet, follow the instructions in [Connect ZKsync Era to your wallet](/build/connect-to-zksync).
- If you haven't already added zkSync Era to your wallet, follow the instructions in [Connect zkSync Era to your wallet](/build/connect-to-zksync).
- Continue to [Deploy your first contract](/build/zksync-101/deploy-your-first-contract) to learn how to use Remix or Atlas
to deploy a contract onto ZKsync Era.
- If you are familiar with ZKsync Era and want to develop using `zksync-cli` locally
to deploy a contract onto zkSync Era.
- If you are familiar with zkSync Era and want to develop using `zksync-cli` locally
on your machine, you can jump over to the [Quickstart](/build/quick-start) section.
29 changes: 14 additions & 15 deletions content/00.build/05.zksync-101/3.deploy-your-first-contract.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: Deploy your first contract
description: Deploy a smart contract to ZKsync from your browser using Remix or Atlas in under 5 minutes
description: Deploy a smart contract to zkSync from your browser using Remix or Atlas in under 5 minutes
---

This tutorial shows you how to deploy and interact with a smart contract on ZKsync Era in less than 5 minutes.
It will help you get familiar with the ZKsync smart contract development and deployment process using different tools.
This tutorial shows you how to deploy and interact with a smart contract on zkSync Era in less than 5 minutes.
It will help you get familiar with the zkSync smart contract development and deployment process using different tools.

In this section you will learn how to:

Expand Down Expand Up @@ -37,7 +37,7 @@ contract ZeekSecretMessages {
constructor() {
// Zeek initializes the contract with a welcome message
emit MessageReceived("Zeek welcomes you to ZKsync!");
emit MessageReceived("Zeek welcomes you to zkSync!");
}
// Function to send a "secret" message to Zeek
Expand All @@ -62,7 +62,7 @@ The Solidity smart contract contains two functions:
- `getTotalMessages` returns the number of messages stored in the smart contract.

::callout{icon="i-heroicons-light-bulb"}
ZKsync Era is [EVM compatible](/build/resources/glossary#evm-compatible).
zkSync Era is [EVM compatible](/build/resources/glossary#evm-compatible).
You can write smart contracts with Solidity or Vyper and use existing popular libraries like OpenZeppelin, just like on Ethereum.
::

Expand All @@ -87,10 +87,9 @@ items: [{
Copy the smart contract address from Atlas/Remix and search it via the [%%zk_testnet_name%%
explorer](%%zk_testnet_block_explorer_url%%). You’ll see the contract has a transaction from the message you just sent.

![Contract in ZKsync explorer](/images/101-quickstart/101-contract-deployed.png)
![Contract in zkSync explorer](/images/101-quickstart/101-contract-deployed.png)

The status will be “Processed” on ZKsync and “Sending” on Ethereum. [Learn more about the transaction lifecycle on
ZKsync](/zk-stack/concepts/transaction-lifecycle).
The status will be “Processed” on zkSync and “Sending” on Ethereum. [Learn more about the transaction lifecycle on zkSync](/zk-stack/concepts/transaction-lifecycle).

In the “Contract” tab you’ll see the contract source code as Atlas and Remix automatically verified the contract for us.
When a smart contract is verified in a block explorer, it means that the source code of the contract has been published
Expand All @@ -99,22 +98,22 @@ code to understand its functions and intentions.

Finally in the “Events” tab, you’ll see the replies from Zeek as these are emitted as events in our smart contract.

![Contract events in ZKsync explorer](/images/101-quickstart/101-contract-events.png)
![Contract events in zkSync explorer](/images/101-quickstart/101-contract-events.png)

ZK is the endgame ✌️

## Takeaways

- **EVM-compatibility**: ZKsync Era is EVM-compatible and you can write smart contracts in Solidity or Vyper as in
- **EVM-compatibility**: zkSync Era is EVM-compatible and you can write smart contracts in Solidity or Vyper as in
Ethereum.
- **Custom compilers**: smart contracts deployed to ZKsync Era must be compiled with the customs compilers: `zksolc` for
- **Custom compilers**: smart contracts deployed to zkSync Era must be compiled with the customs compilers: `zksolc` for
Solidity and `zkvyper` for Vyper.
- **Browser-based IDEs**: Existing tools like Atlas and Remix use ZKsync custom compilers under the hood.
- **Browser-based IDEs**: Existing tools like Atlas and Remix use zkSync custom compilers under the hood.

## Next steps

- Continue learning by [deploying an ERC20 token to ZKsync](/build/zksync-101/erc20-token).
- Join the [ZKsync developer community in Discord](https://join.zksync.dev/) where you can ask any questions about this tutorial in the #dev-101
- Continue learning by [deploying an ERC20 token to zkSync](/build/zksync-101/erc20-token).
- Join the [zkSync developer community in Discord](https://join.zksync.dev/) where you can ask any questions about this tutorial in the #dev-101
channel
- Join our [GitHub Discussions Community](%%zk_git_repo_zksync-developers%%/discussions/) to
help other devs building on ZKsync or share your project.
help other devs building on zkSync or share your project.
8 changes: 4 additions & 4 deletions content/00.build/05.zksync-101/4.erc20-token.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ items: [{

## Takeaways

- **ZKsync is EVM compatible** and supports existing smart contract libraries like OpenZeppelin
- **Use popular libraries like** `ethers` , `viem`, or `web3.js` to interact with smart contracts deployed on ZKsync.
- **zkSync is EVM compatible** and supports existing smart contract libraries like OpenZeppelin
- **Use popular libraries like** `ethers` , `viem`, or `web3.js` to interact with smart contracts deployed on zkSync.

## Next steps

- Join the [ZKsync developer community in Discord](https://join.zksync.dev/) where you can ask any questions about this tutorial in the #dev-101
- Join the [zkSync developer community in Discord](https://join.zksync.dev/) where you can ask any questions about this tutorial in the #dev-101
channel
- Continue learning about [paymasters and paying fees with this ERC20 token](/build/zksync-101/paymasters-introduction).
- Join our [GitHub Discussions Community](%%zk_git_repo_zksync-developers%%/discussions/) to
help other devs building on ZKsync or share your project.
help other devs building on zkSync or share your project.
8 changes: 4 additions & 4 deletions content/00.build/05.zksync-101/5.paymasters-introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: Learn about paymasters and use one to pay transaction fees with you
This tutorial makes use of smart contracts deployed in the previous two tutorials,
[Deploy your first contract](/build/zksync-101/deploy-your-first-contract) and [Create an ERC20 token](/build/zksync-101/erc20-token).
This section introduces one of the custom features
of ZKsync: native account abstraction and paymasters.
of zkSync: native account abstraction and paymasters.

In this tutorial we will:

Expand Down Expand Up @@ -39,7 +39,7 @@ Every paymaster has these two functions:

## Paymaster smart contract code

Although application developers are encouraged to create their own paymaster smart contract, ZKsync provides a testnet
Although application developers are encouraged to create their own paymaster smart contract, zkSync provides a testnet
paymaster for convenience and testing purposes.

::callout{icon="i-heroicons-light-bulb"}
Expand Down Expand Up @@ -175,7 +175,7 @@ items: [{

## Takeaways

- Paymasters on ZKsync allow any account to pay fees with ERC20 tokens or enable gasless transactions.
- Paymasters on zkSync allow any account to pay fees with ERC20 tokens or enable gasless transactions.

- Paymasters are smart contracts that can have any validations and rules.
- To send a transaction through a paymaster, we only need to include additional parameters in the transaction.
Expand All @@ -185,4 +185,4 @@ items: [{
- Learn more about paymasters and native account abstraction in this section of the docs.
- Browse different paymaster examples in [this open source
repository](https://github.com/matter-labs/paymaster-examples).
- Continue learning by building a GoFundMe clone on ZKsync.
- Continue learning by building a GoFundMe clone on zkSync.
2 changes: 1 addition & 1 deletion content/00.build/05.zksync-101/_dir.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
title: ZKsync 101
title: zkSync 101
Loading

0 comments on commit 5fd8689

Please sign in to comment.