diff --git a/.firebaserc b/.firebaserc
index 22c8cdce..6a496bc8 100644
--- a/.firebaserc
+++ b/.firebaserc
@@ -1,5 +1,18 @@
{
"projects": {
- "default": "zksync-docs-staging"
- }
+ "default": "zksync-docs"
+ },
+ "targets": {
+ "zksync-docs": {
+ "hosting": {
+ "prod": [
+ "zksync-docs"
+ ],
+ "staging": [
+ "zksync-docs-staging"
+ ]
+ }
+ }
+ },
+ "etags": {}
}
diff --git a/.github/workflows/checks.yaml b/.github/workflows/checks.yaml
index b8862165..115b9e1f 100644
--- a/.github/workflows/checks.yaml
+++ b/.github/workflows/checks.yaml
@@ -1,22 +1,21 @@
-name: clean ๐งน
+name: check ๐ต๏ธ
on:
pull_request:
branches: [main, staging]
-
workflow_dispatch:
jobs:
format:
- name: format
+ name: code_format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
- - name: Runs prettier formatter
- run: |
- bun install
- bun run lint:prettier
+ - name: Install Dependencies
+ run: bun install
+ - name: Runs Prettier Formatter
+ run: bun run lint:prettier
spelling:
name: spelling
@@ -24,18 +23,29 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
- - name: Runs cspell spell checker
- run: |
- bun install
- bun run lint:spelling
+ - name: Install Dependencies
+ run: bun install
+ - name: Runs cSpell Spell Checker
+ run: bun run lint:spelling
+
+ markdown-lint:
+ name: markdown_lint
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: oven-sh/setup-bun@v1
+ - name: Install Dependencies
+ run: bun install
+ - name: Runs Markdown Linter
+ run: bun run lint:markdown
- lint:
- name: lint markdown
+ eslint:
+ name: code_lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
- - name: Runs mdl markdown linter
- run: |
- bun install
- bun run lint:markdown
\ No newline at end of file
+ - name: Install Dependencies
+ run: bun install
+ - name: Runs ESLint
+ run: bun run lint:eslint
diff --git a/.github/workflows/deploy-preview.yml b/.github/workflows/deploy-preview.yml
new file mode 100644
index 00000000..036839f2
--- /dev/null
+++ b/.github/workflows/deploy-preview.yml
@@ -0,0 +1,31 @@
+name: "preview builder ๐"
+on:
+ pull_request:
+ workflow_dispatch:
+
+jobs:
+ build_and_preview:
+ env:
+ NUXT_UI_PRO_LICENSE: ${{ secrets.NUXT_UI_PRO_LICENSE }}
+ NUXT_PUBLIC_SITE_URL: ${{ secrets.NUXT_PUBLIC_SITE_URL }}
+ if: ${{ github.event_name == 'workflow_dispatch' || github.event.pull_request.head.repo.full_name == github.repository }}
+ runs-on: ubuntu-latest
+ outputs:
+ output_urls: "${{ steps.preview_deploy.outputs.urls }}"
+ steps:
+ - uses: actions/checkout@v4 # v4
+
+ - uses: oven-sh/setup-bun@v1
+
+ - name: "Install dependencies"
+ run: bun install
+ - name: "Deploy target: staging"
+ run: bun run build && bun run generate
+
+ - name: "Deploy preview"
+ uses: matter-labs/action-hosting-deploy@main
+ with:
+ repoToken: '${{ secrets.GITHUB_TOKEN }}'
+ firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_ZKSYNC_DOCS }}"
+ target: staging
+ projectId: zksync-docs
\ No newline at end of file
diff --git a/.github/workflows/deploy-prod.yml b/.github/workflows/deploy-prod.yml
new file mode 100644
index 00000000..bb76800e
--- /dev/null
+++ b/.github/workflows/deploy-prod.yml
@@ -0,0 +1,56 @@
+name: "deploy ๐"
+on:
+ push:
+ branches: [main]
+
+jobs:
+ build_and_deploy:
+ env:
+ NUXT_UI_PRO_LICENSE: ${{ secrets.NUXT_UI_PRO_LICENSE }}
+ if: ${{ github.event.repository.full_name == github.repository }}
+ runs-on: ubuntu-latest
+ environment: prod
+ steps:
+ - uses: actions/checkout@v4 # v4
+ with:
+ fetch-depth: 0
+ # Whether to configure the token or SSH key with the local git config
+ # Default: true
+ persist-credentials: false # <--- checking this in commit context
+
+ - uses: oven-sh/setup-bun@v1
+
+ - name: "Install dependencies"
+ run: bun install
+ - name: "Deploy target: staging"
+ run: bun run build && bun run generate
+ # TODO: ask about below
+ # env:
+ # RUDDERSTACK_WRITE_KEY: "${{ secrets.RUDDERSTACK_WRITE_KEY }}"
+ # RUDDERSTACK_DATA_PLANE_URL: "${{ secrets.RUDDERSTACK_DATA_PLANE_URL }}"
+
+ - uses: matter-labs/action-hosting-deploy@main
+ with:
+ repoToken: "${{ secrets.GITHUB_TOKEN }}"
+ firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_ZKSYNC_DOCS }}"
+ target: prod
+ projectId: zksync-docs
+ channelId: live
+
+ # TODO: re-enable once we are closer to production deployment
+ # - name: Purge cf cache
+ # uses: nathanvaughn/actions-cloudflare-purge@db8c58f61ba4c3ec77229c8fa14ddebb3b59932f # v3.1.0
+ # with:
+ # cf_zone: ${{ secrets.CLOUDFLARE_ZONE }}
+ # cf_auth: ${{ secrets.CLOUDFLARE_AUTH_KEY }}
+ # hosts: |
+ # docs.zksync.io
+ # era.zksync.io
+ # v2-docs.zksync.io
+
+ # TODO: Implement reindex task tracking instead of blindly exiting on task submit
+ # - name: Trigger Algolia reindex
+ # run: |
+ # curl -X POST "${{ secrets.ALGOLIA_CRAWLER_BASE_URL }}/crawlers/${{ secrets.ALGOLIA_CRAWLER_ID }}/reindex" \
+ # -H "Content-Type: application/json" \
+ # --user "${{ secrets.ALGOLIA_CRAWLER_USER_ID }}:${{ secrets.ALGOLIA_CRAWLER_API_KEY }}"
\ No newline at end of file
diff --git a/.github/workflows/deploy-staging.yml b/.github/workflows/deploy-staging.yml
new file mode 100644
index 00000000..9d33ea0c
--- /dev/null
+++ b/.github/workflows/deploy-staging.yml
@@ -0,0 +1,31 @@
+name: "deploy staging ๐๏ธ"
+on:
+ push:
+ branches: [staging]
+
+jobs:
+ build_and_deploy:
+ env:
+ NUXT_UI_PRO_LICENSE: ${{ secrets.NUXT_UI_PRO_LICENSE }}
+ NUXT_PUBLIC_SITE_URL: ${{ secrets.NUXT_PUBLIC_SITE_URL }}
+ if: ${{ github.event.repository.full_name == github.repository }}
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4 # v4
+ with:
+ ref: "${{ github.event.inputs.ref }}"
+
+ - uses: oven-sh/setup-bun@v1
+
+ - name: "Install dependencies"
+ run: bun install
+ - name: "Deploy target: staging"
+ run: bun run build && bun run generate
+
+ - uses: matter-labs/action-hosting-deploy@main
+ with:
+ repoToken: "${{ secrets.GITHUB_TOKEN }}"
+ firebaseServiceAccount: "${{ secrets.FIREBASE_SERVICE_ACCOUNT_ZKSYNC_DOCS }}"
+ target: staging
+ projectId: zksync-docs
+ channelId: live
\ No newline at end of file
diff --git a/.github/workflows/firebase-hosting-merge.yml b/.github/workflows/firebase-hosting-merge.yml
deleted file mode 100644
index 9af63385..00000000
--- a/.github/workflows/firebase-hosting-merge.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-# This file was auto-generated by the Firebase CLI
-# https://github.com/firebase/firebase-tools
-
-name: Deploy to Firebase Hosting on merge
-'on':
- push:
- branches:
- - main
-jobs:
- build_and_deploy:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - run: bun run build
- - uses: FirebaseExtended/action-hosting-deploy@v0
- with:
- repoToken: '${{ secrets.GITHUB_TOKEN }}'
- firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_ZKSYNC_DOCS }}'
- channelId: live
- projectId: zksync-docs
diff --git a/.github/workflows/firebase-hosting-pull-request.yml b/.github/workflows/firebase-hosting-pull-request.yml
deleted file mode 100644
index df1d4f35..00000000
--- a/.github/workflows/firebase-hosting-pull-request.yml
+++ /dev/null
@@ -1,21 +0,0 @@
-# This file was auto-generated by the Firebase CLI
-# https://github.com/firebase/firebase-tools
-
-name: Deploy to Firebase Hosting on PR
-'on': pull_request
-permissions:
- checks: write
- contents: read
- pull-requests: write
-jobs:
- build_and_preview:
- if: '${{ github.event.pull_request.head.repo.full_name == github.repository }}'
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - run: bun run build
- - uses: FirebaseExtended/action-hosting-deploy@v0
- with:
- repoToken: '${{ secrets.GITHUB_TOKEN }}'
- firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_ZKSYNC_DOCS }}'
- projectId: zksync-docs
diff --git a/.github/workflows/secrets_scanner.yaml b/.github/workflows/secrets_scanner.yaml
index 4be8437d..ff4ff92f 100644
--- a/.github/workflows/secrets_scanner.yaml
+++ b/.github/workflows/secrets_scanner.yaml
@@ -1,9 +1,9 @@
-name: Leaked Secrets Scan
+name: secret ๐
on:
pull_request:
merge_group:
jobs:
- TruffleHog:
+ scan:
runs-on: ubuntu-latest
steps:
- name: Checkout code
diff --git a/.gitignore b/.gitignore
index feb2e8b6..763090fe 100644
--- a/.gitignore
+++ b/.gitignore
@@ -99,3 +99,4 @@ yarn.lock
.nitro
.cache
dist
+.firebase
\ No newline at end of file
diff --git a/app.vue b/app.vue
index 6a1a44f8..b31c0f44 100644
--- a/app.vue
+++ b/app.vue
@@ -1,5 +1,7 @@
-This is the about page.
+
The specified file was not found on this website. Please check the URL for mistakes and try again.
-This page was generated by the Firebase Command-Line Interface. To modify it, edit the 404.html
file in your project's configured public
directory.
You're seeing this because you've successfully setup Firebase Hosting. Now it's time to go build something extraordinary!
- Open Hosting Documentation -Firebase SDK Loading…
- - - -