Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release #108

Merged
merged 93 commits into from
Jun 5, 2024
Merged

Release #108

merged 93 commits into from
Jun 5, 2024

Conversation

itsacoyote
Copy link
Contributor

Description

Merge staging into main for release

dutterbutter and others added 30 commits March 15, 2024 14:21
Changes introduced in this PR: 
- Adds templates and codeowners 
- Inits bun project
- Sets up initial "checks". @itsacoyote I just defaulted to these, we
can change accordingly to our preference as the project evolves.
# What 💻 
* Setup Nuxt Content project with a starter template that includes Nuxt,
Nuxt Content, Nuxt UI Pro, Nuxt Studio.
* Modified setting configs for variety of things. Prettier, ESLint,
MarkdownLint, Spellcheck, etc.
* Threw in all the existing markdown documentation from existing site
into `/content/`. Will figure out cleanup and organization in the
process.

# Why ✋
* Need a new framework to develop in
* Need to mess with existing docs and how it'll integrate into the new
framework


# Notes 📝
README is not up to date for managing and running the project yet.
There's a bunch of junk also that may make no sense, but was just caught
up in the commit when testing out the framework.

To get started, install then run `bun run dev -o`

---------

Co-authored-by: Dustin Brickwood <[email protected]>
# What 💻 
* first pass at landing page design
* updated theme colors to better match zksync

# Why ✋
* needs to look zksync branded
* have a decent starting point for a landing page to start from

# Evidence 📷
run project locally to see cool stuff.
…es lint issues (#6)

# What 💻 
* Adds preview / staging / deployment actions for firebase
* Runs eslint and corrections 
* Updates checks.yaml file

# Why ✋
* For setting up initial deployment environments 
* Clean code is good
* Adds eslint to checker

# Evidence 📷
Include screenshots, screen recordings, or `console` output here
demonstrating that your changes work as intended
![Screenshot 2024-03-25 at 9 26
48 AM](https://github.com/matter-labs/zksync-docs/assets/29983536/b7886245-de14-4f8e-b63a-5f6323803ef7)

<!-- 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? -->
# What 💻 
* Adjusted the particles configuration 
* cleaned up some things missed when testing nuxt content
* adjusted prettier ignore


# Why ✋
* cleaner templates and particles configuration is now in a separate
file
* components made for Nuxt Content need to be placed in
`/components/content/` folder. This accidentally got covered by the
prettier ignore file. The purpose of the prettier ignore for markdown
content is so that we don't have prettier formatting non-standard
markdown content (like vue component syntax) and breaking them. This is
why markdown is ignored for now on prettier auto formatting.
# What 💻 
* Create a component that tabs content for display
* Create a component that displays partial markdown files for re-use
across documents

# Why ✋
* Breaks down complex instructions that will be hidden in tabs into
partials for easier editing.
* Makes it easier to re-use content versus re-writing content.

# Evidence 📷
![Screenshot 2024-03-27 at 3 21
48 PM](https://github.com/matter-labs/zksync-docs/assets/812331/2ff1eb91-fa1f-4231-82de-51f61dd51702)

Example set up in the Getting Started page to show how it can be used.
NuxtUI has a UTabs component that can be used plainly if we didn't want
to use this. This new component provides a way to have tabbed content
that can be loaded from partial markdown files to help split up content
and make editing potentially easier.

A future feature to implement in this component would be to have a way
to track which tab is actively selected and update similar tabs to the
same selected tab. Also store this selected tab in localStorage
potentially so that the preferred tab for the user is always selected
across the site.
# What 💻 
* Created a collection of articles on Documentation Contribution
Guidelines
  * Contributing
  *  Contribution Guidelines
  * Documentation Styleguide
* Created a Resources section
  * Glossary  

# Why ✋
* Create a set of standards to help with consistency across our
documentation.
# What 💻 
* Create a parser that replaces tags in markdown content with values
defined in a _zksync.json file.

# Why ✋
* For very important content, we don't want to copy/past and rewrite
things all over the docs.

# How it works

Content is structured in a json file under `content/_zksync.json`. Tags
are wrapped in `%%` and are prefixed with `zk_`. The path to the value
in the json file is represented with underscores instead of a dot.

Let's say we want to put the Mainnet block explorer URL into a page
somewhere. It's in the JSON file as `mainnet.block_explorer_url`. The
tag for it will be `%%zk_mainnet_block_explorer_url%%`.
# What 💻 
* Create API Reference Docs
# What 💻 
* update the docs with Block Explorer page
  * condensed the block explorers pages into one 
* Update the docs with tooling/zksync-cli docs
  * Reformatted the content 
* Shifted the API Reference docs in the navigation 
* Removed `noreferrer` from external link component. 
* primarily for analytics purposes. I don't think it hurts to remove it,
and makes it easier to track incoming for analytics.
* Added vscode snippets file for reusable snippets.   

# Why ✋
* Easier to read and navigate zksync-cli commands via the navigation
… foundry (#10)

# What 💻 
* Adds initial quickstart guide framework 
* Adds components for organizing content
* Adds reusable content in partials

# Why ✋
* Includes quickstart for deploying, factories, testing, upgrading, and
general paymaster flow
* Components are helpful for displaying and organizing content

# 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]>
# What 💻 
* Add doc sections for Hardhat and Foundry
# What 💻 
* Adds approval paymaster flow guide
* Makes small edits / fixes 

# Why ✋
* Distinction between approval flow and general flow paymasters

# 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? -->
# What 💻 
* Simplified foundry-zksync installation and makes use of pre-compiled
binaries instead of source

# Why ✋
* Better experience 

# 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? -->
# What 💻 
* Add test and debug section to docs
# What 💻 
* Adds navigation for Build, ZK Stack and External Node
* Moves /content directory around to match site navigation structure

# Why ✋
* Need to add in the other sections of the docs website
# What 💻 
* Add the zk-stack concepts section to the docs
* Add Katex for math equation rendering
  * The zksync Fee Mechanism page renders math equations.
# What 💻 
* Add zk-stack components section to docs
# What 💻 
* Add External Node section to docs
# What 💻 
* update font for readability
* Use fira mono for code font
# What 💻 
* Switch all links to use standard markdown format for links - `[some
text](url)`
* Update the ProseA component that edits markdown links
* external links have added rel tags and an icon to indicate opening in
a new tab.
* remove the ExternalLink component

# Why ✋
* Recently learned that we can override Prose components which
NuxtContent provides. This allows us to customize particular Prose
components like the Anchor tag component to further customize how it
renders links.
* This will help us to consistently use a single syntax for links and
still handle external link formatting.

### Cool Factoid

Did you know you can do some fancy replace with VSCode search? Rather
than tediously manually replacing all external-link references with the
markdown syntax, you can use regex to search then "select" text from the
results to use in a replace action.

`:external-link\{text="([^"]*)" href="([^"]*)"\}`

The `( )` groups text as a value that you can reference with `$#` in the
replace:

`[$1]($2)`
# What 💻 
* Added two custom logos for Remix IDE and AtlasZK IDE.
* Added additional icon libraries to support displaying logos for
Solidity and Vyper

# Why ✋
* Sol and Vyper logos can display on the code preview components
# What 💻 
* Add a github action to check links for 404s
  * This *only* checks internal links

# Why ✋
* Ensure we don't provide links to broken pages
# What 💻 
* Install the Nuxt Image module

# Why ✋
* Optimizes images 

 # Notes 📝
* Nuxt Content just added NuxtImage support in their `ProseImg`
component literally hours ago. This means that it is not available yet
in an official release. In the meantime, I just copied the code from the
PR and we can remove our `ProseImg` component when the latest release
includes it.
# What 💻 
* Not needed step as per devops review

# Why ✋
* Not needed here

# 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? -->
# What 💻 
* Adds ecosystem section

# Why ✋
* Showcase ecosystem services

# 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? -->
- add cookbook link to top header nav for previewing
itsacoyote and others added 22 commits May 23, 2024 10:23
Resolves DEVRL-690, DEVRL-691, DEVRL-627, DEVRL-649, DEVRL-692

-
https://linear.app/matterlabs/issue/DEVRL-692/fix-improperly-formatted-links
- https://linear.app/matterlabs/issue/DEVRL-649/small-ify-buttons
-
https://linear.app/matterlabs/issue/DEVRL-627/change-url-for-dev-updates-card
-
https://linear.app/matterlabs/issue/DEVRL-691/remove-a-link-to-zksync-erareleases-see-whats-new-in-2420-from-docs
-
https://linear.app/matterlabs/issue/DEVRL-690/move-cards-on-build-to-bottom-of-the-page

## List of changes
- added links to breadcrumbs
  - added redirects for certain paths that don't have an index page
- fixed links that were improperly formatted for Nuxt Content
- adjusted some buttons that were too large
- update Dev Updates card on landing page to point to zksyncDevs twitter
account
- remove the version update link in the hero section of the landing page
- moved cards on the Build index page down to the bottom of the page
Update description wording

Tested out the "Edit this page" link from the staging website, works
pretty easily and allows for creating a "patch" branch to create the PR.
Resolves DEVRL-697


https://linear.app/matterlabs/issue/DEVRL-697/add-analytics-to-zksync-docs

## List of changes

- Add Google Analytics
  - Analytics is disabled for non-production environments
- Add husky hooks for pre-commit
  - Add staged-lint for pre-commit to check staged files

- Edit workflows
  - Adjust use of Bun 
- Configure workflow actions, testing release with a dry-run, ensure
build actions work
# What 💻 
* Updates 101 getting started to setup a keystore
* Updates all 101 Foundry tutorials to use keystore in commands to
deploy/send txs
* Update all commands in Foundry guide with examples of keystore use and
PK.
* Additionally, fixes a partial not correctly displayed in paymaster
page

# Why ✋
* Fixes DEVRL676
* To be merged with
matter-labs/zksync-contract-templates#14

# 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: Nicolas Villanueva <[email protected]>
# What 💻 
* updated verify commands for npm and pnpm (UUPS) to align with Beacon
and Transparent proxy tutorials - current `npm run hardhat verify
<PROXY-ADDRESS>` fails

# Why ✋
* Reason why first thing was added to PR
* Reason why second thing was added to PR
* Reason why third thing was added to PR

# Evidence 📷
Include screenshots, screen recordings, or `console` output here
demonstrating that your changes work as intended
<img width="937" alt="image"
src="https://github.com/matter-labs/zksync-docs/assets/112873874/5c7b917a-d117-42c5-913a-f35f6c2702f0">


<!-- 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? -->
Disable husky in github workflows
Resolves DEVRL-686

Update the bridge referenced in the Sepolia faucets to the zksync
bridge.
Updates docs to be up to date with latest from current docs
# What 💻 
* Adds warning for installing deps with NPM

# Why ✋
* NPM unable to properly resolve deps.
* Fix DEVRL-702 and DEVRL-622

# 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? -->
Fix the lint-staged command for cspell. It was missing an additional
part of the command to check files individually via lint-staged.
# What 💻 
* Replacing pnpx command with pnpm (pnpx is deprecated)

# Why ✋
* Pnpx command cause errors

# 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? -->
- Fixes syntax of callouts defined in docs.
- Remove links from headers and place them in the body content.
Resolves DEVRL-704, DEVRL-708, DEVRL-709, DEVRL-711

- Made edits to the description of the Paymaster in quickstart and
zksync 101.
- Added disclaimers to paymaster page for quickstart and zksync 101.
- Added a Paymaster entry to the Glossary.
- Added a disclaimer to the ERC20 page for quickstart.
- Adds a collection of markdown documents to add to our [Community
Standards](https://github.com/matter-labs/zksync-docs/community).
  - Code of Conduct doc
  - Contributing doc for getting started
  - Add cute little tags to the README
  - Add a Support doc to help users in getting support

- Adds templates for Issues that use the [Issue
forms](https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms)
format
  - Bug Report issue template for reporting bugs with guides
  - Feature Report issue template for requesting new features

- Modify the Pull Request template. Simplifies the form and also adds in
some additional descriptions for the user to read before submitting.
# Description

Remove link-check from Checks workflow. The Nuxt SEO module already has
a link-checker that will run on build.

Add environment to workflows to provide configuration for workflows.
Workflows will display by environments and hook up with slack
notifications for deployments.
# Description

We have a number of links out there that exist that point to pages that
will eventually no longer exist when the new Docs site is released.
These links need to be set up with rewrites to ensure visitors still get
to the pages they're trying to get to. All existing tutorials that are
in Code Community have rewrites directed to them. Any tutorials that do
not exist in the Code Community will be redirected to the total list of
tutorials on Code Community.

Eventually these public links will be updated to point to the new URLs.

Part of
[DEVRL-730](https://linear.app/matterlabs/issue/DEVRL-730/[launch]-handle-rewrites-for-old-urls)
# Description

Updates quickstart tutorial to remove message hashing as it adds
unnecessary complexity.
Also updates screenshots.

To be merged with:
zkSync-Community-Hub/zksync-quickstart-remix#1

## Linked Issues

<!-- If you have any issues this PR is related to, link them here. -->
<!--
Check out
https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue
on how to automate linking a GitHub Issue to a PR.
-->

## Additional context
# Description

Add concurrency rules to workflows for staging and production deploy
workflows. This cancels any currently running workflow when a new
workflow is set to run. For example when two PRs are merged to main
around the same time, one will cancel out the other and only one
workflow is run to deploy.
This makes it so that we don't have a queue of build and deploys to run,
cutting down time and resources.

Fix yaml formatting errors with github issue templates. They do not list
in Create Issues if format is incorrect.
# Description

Small edits to build pages based on feedback. Move cards on Build /
Introduction page up to the top to prioritize them. Improved wording on
funding wallets with testnet funds on Build / Connect to zkSync

Add redirects for old /sdks paths to point to the new /sdk path
# Description

Provides additional links to dappradar for additional lists of
resources.

Resolves DEVRL-710
# Description

Update project to prepare for production release.
@itsacoyote itsacoyote requested a review from a team June 5, 2024 17:25
Copy link

github-actions bot commented Jun 5, 2024

Visit the preview URL for this PR (updated for commit fd93bdd):

https://zksync-docs-staging-5eb09--pr108-staging-r7pn85zf.web.app

(expires Wed, 12 Jun 2024 17:50:27 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: bfaafba5fa82d4f63473aaa76a21fabf1fbb3a11

# Description

Get trufflehog working again.
Rename trufflehog job
Copy link
Contributor

@MexicanAce MexicanAce left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@itsacoyote itsacoyote merged commit 6cc0c82 into main Jun 5, 2024
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants