diff --git a/.eslintignore b/.eslintignore
deleted file mode 100644
index 22be4917..00000000
--- a/.eslintignore
+++ /dev/null
@@ -1,8 +0,0 @@
-.output
-.nuxt
-*.d.ts
-**/node_modules/**
-**/build/**
-**/dist/**
-**/coverage/**
-**/.*/**
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index e9fca7d4..00000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "env": {
- "browser": true,
- "es2021": true,
- "node": true
- },
- "extends": ["eslint:recommended", "plugin:vue/vue3-essential", "@nuxt/eslint-config"],
- "plugins": ["vue"],
- "rules": {
- "quote-props": ["error", "as-needed"],
- "vue/html-self-closing": [
- "error",
- {
- "html": {
- "void": "always"
- }
- }
- ],
- "vue/singleline-html-element-content-newline": "off",
- "vue/html-self-closing": "off"
- }
-}
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 7cbd388d..32a3f97e 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -18,5 +18,6 @@
"strings": "off"
},
"editor.tabCompletion": "onlySnippets"
- }
+ },
+ "eslint.experimental.useFlatConfig": true
}
diff --git a/README.md b/README.md
index ebf90395..aaf6ac5a 100644
--- a/README.md
+++ b/README.md
@@ -1,125 +1,62 @@
-![nuxt-ui-docs-social-card](https://github.com/nuxt-ui-pro/docs/assets/739984/f64e13d9-9ae0-4e03-bf7f-6be4c36cd9ba)
+# Community Code
-# Nuxt UI Pro - Docs template
+Welcome to the ZKsync Community Code repository. This project serves as the community hub for ZKsync, providing comprehensive
+documentation for developers written by 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.
-[![Nuxt UI Pro](https://img.shields.io/badge/Made%20with-Nuxt%20UI%20Pro-00DC82?logo=nuxt.js&labelColor=020420)](https://ui.nuxt.com/pro)
-[![Nuxt Studio](https://img.shields.io/badge/Open%20in%20Nuxt%20Studio-18181B?&logo=nuxt.js&logoColor=3BB5EC)](https://nuxt.studio/themes/docs)
+## Tools used
-- [Live demo](https://docs-template.nuxt.dev/)
-- [Play on Stackblitz](https://stackblitz.com/github/nuxt-ui-pro/docs)
-- [Documentation](https://ui.nuxt.com/pro/getting-started)
-- [Clone on Nuxt Studio](https://nuxt.studio/themes/docs)
+- [Vue](https://vuejs.org/)
+- [Nuxt](https://nuxt.com/)
+- [Nuxt Content](https://content.nuxt.com/)
+- [Nuxt UI & Nuxt UI Pro](https://ui.nuxt.com/)
+- [Tailwind](https://tailwindcss.com/)
+- [Bun](https://bun.sh/)
-## Quick Start
+## Local Setup
-```bash [Terminal]
-npx nuxi init -t github:nuxt-ui-pro/docs
-```
-
-## Setup
-
-Make sure to install the dependencies:
-
-```bash
-# npm
-npm install
-
-# pnpm
-pnpm install
-
-# yarn
-yarn install
+This project uses bun to run, follow the [bun installation instructions](https://bun.sh/docs/installation). Once bun is
+installed, run the following command to install all project dependencies:
-# bun
+```shell
bun install
```
-## Development Server
-
-Start the development server on `http://localhost:3000`:
-
-```bash
-# npm
-npm run dev
-
-# pnpm
-pnpm run dev
-
-# yarn
-yarn dev
-
-# bun
-bun run dev
-```
-
-## Production
-
-Build the application for production:
-
-```bash
-# npm
-npm run build
+## Development
-# pnpm
-pnpm run build
+To run the project locally at `http://localhost:3000`
-# yarn
-yarn build
-
-# bun
-bun run build
+```shell
+bun run dev -o
```
-Locally preview production build:
-
-```bash
-# npm
-npm run preview
-
-# pnpm
-pnpm run preview
+## Local Preview
-# yarn
-yarn preview
+To locally preview the production build, first run `bun run generate` to build the project, then run the following:
-# bun
+```shell
bun run preview
```
-Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
+## Lint & Formatting
-## Nuxt Studio integration
+This project provides lint commands to check the project.
-Add `@nuxthq/studio` dependency to your package.json:
+### Markdown Linting
-```bash
-# npm
-npm install --save-dev @nuxthq/studio
+Markdown files are found in the `/content` directory. The following lint commands will run within that directory:
-# pnpm
-pnpm add -D @nuxthq/studio
-
-# yarn
-yarn add -D @nuxthq/studio
-
-# bun
-bun add -d @nuxthq/studio
-```
-
-Add this module to your `nuxt.config.ts`:
-
-```ts
-export default defineNuxtConfig({
- ...
- modules: [
- ...
- '@nuxthq/studio'
- ]
-})
+```shell
+bun run lint:spelling
+bun run lint:markdown
```
-Read more on [Nuxt Studio docs](https://nuxt.studio/docs/projects/setup).
+### Linting
-## Renovate integration
+The following commands are available to run linting on the project:
-Install [Renovate GitHub app](https://github.com/apps/renovate/installations/select_target) on your repository and you are good to go.
+```shell
+bun run lint:prettier
+bun run lint:eslint
+```
diff --git a/app.config.ts b/app.config.ts
index bec4bd3e..79fdd7ab 100644
--- a/app.config.ts
+++ b/app.config.ts
@@ -1,95 +1,22 @@
export default defineAppConfig({
- ui: {
- variables: {
- light: {
- background: '255 252 255',
- // foreground: '147 68 68',
- },
- dark: {
- background: '17 20 43',
- // foreground: 'var(--color-gray-200)',
- },
- // header: {
- // height: '1rem',
- // },
- },
- primary: 'zkPurple',
- gray: 'zkSlate',
- footer: {
- bottom: {
- left: 'text-sm text-gray-500 dark:text-gray-400',
- wrapper: 'border-t border-gray-200 dark:border-gray-800',
- },
- },
- content: {
- prose: {
- code: {
- icon: {
- go: 'vscode-icons:file-type-go',
- vyper: 'devicon:vyper',
- sol: 'vscode-icons:file-type-solidity',
- },
- },
- },
- },
- },
seo: {
- siteName: 'zkSync Community Cookbook',
+ siteName: 'ZKsync Community Code',
},
header: {
- logo: {
- alt: '',
- light: '/logos/zksync_logo_black.svg',
- dark: '/logos/zksync_logo.svg',
- },
- search: false,
- colorMode: true,
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',
- },
- ],
- },
- footer: {
- credits: 'Made with ❤️ by Matter Labs & Community',
- colorMode: false,
- links: [
- {
- icon: 'i-zksync-matterlabs-logo',
- to: 'https://matter-labs.io',
- target: '_blank',
- 'aria-label': 'MatterLabs Website',
- },
- {
- icon: 'i-simple-icons-x',
- to: 'https://x.com/zksync',
- target: '_blank',
- 'aria-label': 'zkSync on X',
- },
- {
- icon: 'i-simple-icons-github',
- to: 'https://github.com/matter-labs',
- target: '_blank',
- 'aria-label': 'zkSync on GitHub',
- },
- {
- icon: 'i-simple-icons-discord',
- to: 'https://join.zksync.dev/',
+ to: 'https://github.com/zkSync-Community-Hub/community-code',
target: '_blank',
- 'aria-label': 'zkSync on Discord',
+ 'aria-label': 'Community Code on GitHub',
+ title: 'Community Code on GitHub',
},
],
},
toc: {
- title: 'Table of Contents',
bottom: {
- title: '',
- edit: 'https://github.com/matter-labs/zksync-docs/edit/staging/content',
- feedback: 'https://github.com/matter-labs/zksync-docs/issues/new?labels=documentation',
+ edit: 'https://github.com/zkSync-Community-Hub/community-code/edit/staging/content',
+ feedback: 'https://github.com/zkSync-Community-Hub/community-code/issues/new',
links: [],
},
},
diff --git a/app.vue b/app.vue
index 48124ab0..6a1cbbdf 100644
--- a/app.vue
+++ b/app.vue
@@ -1,6 +1,5 @@
@@ -49,7 +49,7 @@ provide('navigation', navigation);
-
+
@@ -57,7 +57,8 @@ provide('navigation', navigation);
-
+
+
diff --git a/assets/zksync-icons.ts b/assets/zksync-icons.ts
deleted file mode 100644
index 5b347a6b..00000000
--- a/assets/zksync-icons.ts
+++ /dev/null
@@ -1,35 +0,0 @@
-export const zksyncIcons = {
- icons: {
- logo: {
- body: '',
- },
- 'matterlabs-logo': {
- // svg body
- body: '',
- // svg width and height, optional
- width: 24,
- height: 24,
- },
- 'atlas-zk-logo': {
- body: ``,
- },
- 'remix-logo': {
- body: `
- `,
- },
- },
-};
diff --git a/bun.lockb b/bun.lockb
index 2b4c7151..35c482c2 100755
Binary files a/bun.lockb and b/bun.lockb differ
diff --git a/components/AppFooter.vue b/components/AppFooter.vue
deleted file mode 100644
index a5dc4a5f..00000000
--- a/components/AppFooter.vue
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
- {{ footer.credits }}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/components/AppHeader.vue b/components/AppHeader.vue
deleted file mode 100644
index 8d83e6c4..00000000
--- a/components/AppHeader.vue
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
- Nuxt UI Pro
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/components/OgImage/OgImageCommunityCode.vue b/components/OgImage/OgImageCommunityCode.vue
new file mode 100644
index 00000000..cc0e1eb0
--- /dev/null
+++ b/components/OgImage/OgImageCommunityCode.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+ {{ title }}
+
+
+ {{ description }}
+
+
+
+
diff --git a/components/OgImage/OgImageDocs.vue b/components/OgImage/OgImageDocs.vue
deleted file mode 100644
index f91283fd..00000000
--- a/components/OgImage/OgImageDocs.vue
+++ /dev/null
@@ -1,1704 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ title }}
-
-
- {{ description }}
-
-
-
-
diff --git a/components/content/CheckIcon.vue b/components/content/CheckIcon.vue
deleted file mode 100644
index 6c9f6ca0..00000000
--- a/components/content/CheckIcon.vue
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
diff --git a/components/content/ContentSwitcher.vue b/components/content/ContentSwitcher.vue
deleted file mode 100644
index 19e1ab7c..00000000
--- a/components/content/ContentSwitcher.vue
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
diff --git a/components/content/DisplayPartial.vue b/components/content/DisplayPartial.vue
deleted file mode 100644
index 7eead62f..00000000
--- a/components/content/DisplayPartial.vue
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
diff --git a/components/content/DropPanel/DropPanel.vue b/components/content/DropPanel/DropPanel.vue
deleted file mode 100644
index cc788770..00000000
--- a/components/content/DropPanel/DropPanel.vue
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
-
- {{ tab.label }}
-
-
-
-
-
-
-
-
-
diff --git a/components/content/DropPanel/Panel.vue b/components/content/DropPanel/Panel.vue
deleted file mode 100644
index 251e2f20..00000000
--- a/components/content/DropPanel/Panel.vue
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
diff --git a/components/content/ImgPreview.vue b/components/content/ImgPreview.vue
deleted file mode 100644
index 4a9b7694..00000000
--- a/components/content/ImgPreview.vue
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-
-
diff --git a/components/content/ProseA.vue b/components/content/ProseA.vue
deleted file mode 100644
index 007793fc..00000000
--- a/components/content/ProseA.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/components/content/ProseCodeInline.vue b/components/content/ProseCodeInline.vue
deleted file mode 100644
index 5e85672e..00000000
--- a/components/content/ProseCodeInline.vue
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
diff --git a/components/content/ProseImg.vue b/components/content/ProseImg.vue
deleted file mode 100644
index dc8c0790..00000000
--- a/components/content/ProseImg.vue
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
diff --git a/content/_zksync.json b/content/_zksync.json
deleted file mode 100644
index 968972f8..00000000
--- a/content/_zksync.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "zkevm": {
- "label": "zkSync VM"
- },
- "mainnet": {
- "name": "zkSync Era Mainnet",
- "identifier": "mainnet",
- "rpc_url": "https://mainnet.era.zksync.io",
- "websocket_url": "wss://mainnet.era.zksync.io/ws",
- "chain_id": 324,
- "currency_symbol": "ETH",
- "block_explorer_url": "https://explorer.zksync.io"
- },
- "testnet": {
- "name": "zkSync Era Testnet",
- "identifier": "sepolia",
- "rpc_url": "https://sepolia.era.zksync.dev",
- "websocket_url": "wss://sepolia.era.zksync.dev/ws",
- "chain_id": 280,
- "currency_symbol": "ETH",
- "block_explorer_url": "https://sepolia.explorer.zksync.io"
- },
- "git_repo": {
- "block-explorer": "https://github.com/matter-labs/block-explorer",
- "era-boojum": "https://github.com/matter-labs/era-boojum",
- "era-compiler-llvm": "https://github.com/matter-labs/era-compiler-llvm",
- "era-compiler-llvm-context": "https://github.com/matter-labs/era-compiler-llvm-context",
- "era-compiler-solidity": "https://github.com/matter-labs/era-compiler-solidity",
- "era-compiler-vyper": "https://github.com/matter-labs/era-compiler-vyper",
- "era-contracts": "https://github.com/matter-labs/era-contracts",
- "era-hardhat-with-plugins": "https://github.com/matter-labs/era-hardhat-with-plugins",
- "era-test-node": "https://github.com/matter-labs/era-test-node",
- "era-solidity": "https://github.com/matter-labs/era-solidity",
- "era-zkEVM-assembly": "https://github.com/matter-labs/era-zkEVM-assembly",
- "era-zkevm_circuits": "https://github.com/matter-labs/era-zkevm_circuits",
- "era-zkevm_test_harness": "https://github.com/matter-labs/era-zkevm_test_harness",
- "eravm-spec": "https://matter-labs.github.io/eravm-spec",
- "foundry-zksync": "https://github.com/matter-labs/foundry-zksync",
- "franklin-crypto": "https://github.com/matter-labs/franklin-crypto",
- "hardhat-zksync": "https://github.com/matter-labs/hardhat-zksync",
- "local-setup": "https://github.com/matter-labs/local-setup",
- "matter-labs-github-io": "https://matter-labs.github.io",
- "zksolc-bin": "https://github.com/matter-labs/zksolc-bin",
- "zksync-cli": "https://github.com/matter-labs/zksync-cli",
- "zksync-contract-templates": "https://github.com/matter-labs/zksync-contract-templates",
- "zksync-developers": "https://github.com/zkSync-Community-Hub/zksync-developers",
- "zksync-docs": "https://github.com/matter-labs/zksync-docs",
- "zksync-era": "https://github.com/matter-labs/zksync-era",
- "zksync-frontend-templates": "https://github.com/matter-labs/zksync-frontend-templates",
- "zksync-scripting-templates": "https://github.com/matter-labs/zksync-scripting-templates",
- "zkvyper-bin": "https://github.com/matter-labs/zkvyper-bin"
- }
-}
diff --git a/content/index.yml b/content/index.yml
index a59aaee6..afa9c7be 100644
--- a/content/index.yml
+++ b/content/index.yml
@@ -1,10 +1,7 @@
-title: 'zkSync Community Cookbook'
-description:
- Nuxt UI Pro is a collection of premium Vue components built on top of Nuxt UI to create beautiful & responsive Nuxt
- applications in minutes.
-navigation: false
+title: 'zkSync Code Community'
+description: Contribute and share code for the zkSync community!
features:
- title: 'All-in-one docs template'
+ title: 'Community Contributed Guides for zkSync'
links:
- label: 'Explore community guides'
trailingIcon: 'i-heroicons-arrow-right-20-solid'
diff --git a/error.vue b/error.vue
index a6c0ca61..da611b50 100644
--- a/error.vue
+++ b/error.vue
@@ -31,7 +31,7 @@ provide('navigation', navigation);
-
+
@@ -41,7 +41,7 @@ provide('navigation', navigation);
-
+
{
- const globals = components.filter((c) => ['UButton', 'UIcon'].includes(c.pascalName));
-
- globals.forEach((c) => (c.global = true));
- },
- },
- ui: {
- icons: {
- collections: {
- zksync: zksyncIcons,
- ...getIconCollections(['heroicons', 'simple-icons', 'logos', 'devicon']),
- },
- },
- },
- image: {
- quality: 90,
- format: ['avif', 'webp'],
- },
- fonts: {
- families: [
- { name: 'Raleway', provider: 'google' },
- { name: 'Montserrat', provider: 'google' },
- { name: 'Fira Mono', provider: 'google' },
- ],
- },
- // routeRules: {
- // '/api/search.json': { prerender: true },
- // },
- devtools: {
- enabled: true,
- },
- typescript: {
- strict: false,
- },
- content: {
- highlight: {
- langs: [
- 'asm',
- 'c++',
- 'go',
- 'graphql',
- 'groovy',
- 'java',
- 'jsx',
- 'python',
- 'rust',
- 'solidity',
- 'swift',
- 'toml',
- 'xml',
- ],
- theme: {
- default: 'github-light',
- light: 'github-light',
- dark: 'github-dark',
- sepia: 'monokai',
- },
- },
- },
- runtimeConfig: {
- public: {
- mdc: {
- useNuxtImage: true,
- },
- },
- },
+ extends: [['github:matter-labs/docs-nuxt-template', { install: true }]],
+ modules: ['@nuxt/content', '@nuxt/ui', '@nuxt/eslint'],
});
diff --git a/nuxt.schema.ts b/nuxt.schema.ts
deleted file mode 100644
index b173c97c..00000000
--- a/nuxt.schema.ts
+++ /dev/null
@@ -1,241 +0,0 @@
-import { field, group } from '@nuxthq/studio/theme';
-
-export default defineNuxtSchema({
- appConfig: {
- ui: group({
- title: 'UI',
- description: 'UI Customization.',
- icon: 'i-mdi-palette-outline',
- fields: {
- icons: group({
- title: 'Icons',
- description: 'Manage icons used in UI Pro.',
- icon: 'i-mdi-application-settings-outline',
- fields: {
- search: field({
- type: 'icon',
- title: 'Search Bar',
- description: 'Icon to display in the search bar.',
- icon: 'i-mdi-magnify',
- default: 'i-heroicons-magnifying-glass-20-solid',
- }),
- dark: field({
- type: 'icon',
- title: 'Dark mode',
- description: 'Icon of color mode button for dark mode.',
- icon: 'i-mdi-moon-waning-crescent',
- default: 'i-heroicons-moon-20-solid',
- }),
- light: field({
- type: 'icon',
- title: 'Light mode',
- description: 'Icon of color mode button for light mode.',
- icon: 'i-mdi-white-balance-sunny',
- default: 'i-heroicons-sun-20-solid',
- }),
- external: field({
- type: 'icon',
- title: 'External Link',
- description: 'Icon for external link.',
- icon: 'i-mdi-arrow-top-right',
- default: 'i-heroicons-arrow-up-right-20-solid',
- }),
- chevron: field({
- type: 'icon',
- title: 'Chevron',
- description: 'Icon for chevron.',
- icon: 'i-mdi-chevron-down',
- default: 'i-heroicons-chevron-down-20-solid',
- }),
- hash: field({
- type: 'icon',
- title: 'Hash',
- description: 'Icon for hash anchors.',
- icon: 'i-ph-hash',
- default: 'i-heroicons-hashtag-20-solid',
- }),
- },
- }),
- primary: field({
- type: 'string',
- title: 'Primary',
- description: 'Primary color of your UI.',
- icon: 'i-mdi-palette-outline',
- default: 'green',
- required: [
- 'sky',
- 'mint',
- 'rose',
- 'amber',
- 'violet',
- 'emerald',
- 'fuchsia',
- 'indigo',
- 'lime',
- 'orange',
- 'pink',
- 'purple',
- 'red',
- 'teal',
- 'yellow',
- 'green',
- 'blue',
- 'cyan',
- 'gray',
- 'white',
- 'black',
- ],
- }),
- gray: field({
- type: 'string',
- title: 'Gray',
- description: 'Gray color of your UI.',
- icon: 'i-mdi-palette-outline',
- default: 'slate',
- required: ['slate', 'cool', 'zinc', 'neutral', 'stone'],
- }),
- },
- }),
- seo: group({
- title: 'SEO',
- description: 'SEO configuration.',
- icon: 'i-ph-app-window',
- fields: {
- siteName: field({
- type: 'string',
- title: 'Site Name',
- description:
- 'Name used in ogSiteName and used as second part of your page title (My page title - Nuxt UI Pro).',
- icon: 'i-mdi-web',
- default: [],
- }),
- },
- }),
- header: group({
- title: 'Header',
- description: 'Header configuration.',
- icon: 'i-mdi-page-layout-header',
- fields: {
- logo: group({
- title: 'Logo',
- description: 'Header logo configuration.',
- icon: 'i-mdi-image-filter-center-focus-strong-outline',
- fields: {
- light: field({
- type: 'media',
- title: 'Light Mode Logo',
- description: 'Pick an image from your gallery.',
- icon: 'i-mdi-white-balance-sunny',
- default: '',
- }),
- dark: field({
- type: 'media',
- title: 'Dark Mode Logo',
- description: 'Pick an image from your gallery.',
- icon: 'i-mdi-moon-waning-crescent',
- default: '',
- }),
- alt: field({
- type: 'string',
- title: 'Alt',
- description: 'Alt to display for accessibility.',
- icon: 'i-mdi-alphabet-latin',
- default: '',
- }),
- },
- }),
- search: field({
- type: 'boolean',
- title: 'Search Bar',
- description: 'Hide or display the search bar.',
- icon: 'i-mdi-magnify',
- default: true,
- }),
- colorMode: field({
- type: 'boolean',
- title: 'Color Mode',
- description: 'Hide or display the color mode button in your header.',
- icon: 'i-mdi-moon-waning-crescent',
- default: true,
- }),
- links: field({
- type: 'array',
- title: 'Links',
- description: 'Array of link object displayed in header.',
- icon: 'i-mdi-link-variant',
- default: [],
- }),
- },
- }),
- footer: group({
- title: 'Footer',
- description: 'Footer configuration.',
- icon: 'i-mdi-page-layout-footer',
- fields: {
- credits: field({
- type: 'string',
- title: 'Footer credits section',
- description: 'Text to display as credits in the footer.',
- icon: 'i-mdi-circle-edit-outline',
- default: '',
- }),
- colorMode: field({
- type: 'boolean',
- title: 'Color Mode',
- description: 'Hide or display the color mode button in the footer.',
- icon: 'i-mdi-moon-waning-crescent',
- default: false,
- }),
- links: field({
- type: 'array',
- title: 'Links',
- description: 'Array of link object displayed in footer.',
- icon: 'i-mdi-link-variant',
- default: [],
- }),
- },
- }),
- toc: group({
- title: 'Table of contents',
- description: 'TOC configuration.',
- icon: 'i-mdi-table-of-contents',
- fields: {
- title: field({
- type: 'string',
- title: 'Title',
- description: 'Text to display as title of the main toc.',
- icon: 'i-mdi-format-title',
- default: '',
- }),
- bottom: group({
- title: 'Bottom',
- description: 'Bottom TOC configuration.',
- icon: 'i-mdi-table-of-contents',
- fields: {
- title: field({
- type: 'string',
- title: 'Title',
- description: 'Text to display as title of the bottom toc.',
- icon: 'i-mdi-format-title',
- default: '',
- }),
- edit: field({
- type: 'string',
- title: 'Edit Page Link',
- description: 'URL of your repository content folder.',
- icon: 'i-ph-note-pencil',
- default: '',
- }),
- links: field({
- type: 'array',
- title: 'Links',
- description: 'Array of link object displayed in bottom toc.',
- icon: 'i-mdi-link-variant',
- default: [],
- }),
- },
- }),
- },
- }),
- },
-});
diff --git a/package.json b/package.json
index 074797b2..625482ce 100644
--- a/package.json
+++ b/package.json
@@ -1,9 +1,8 @@
{
- "name": "nuxt-ui-pro-template-docs",
- "private": true,
+ "name": "community-code",
"type": "module",
"scripts": {
- "build": "nuxt build",
+ "build": "nuxt generate",
"dev": "nuxt dev",
"generate": "nuxt generate",
"preview": "nuxt preview",
@@ -19,36 +18,29 @@
"ci:check": "bun run lint:eslint && bun run lint:prettier && bun run lint:spelling && bun run lint:markdown"
},
"dependencies": {
- "@iconify-json/devicon": "^1.1.40",
- "@iconify-json/heroicons": "^1.1.20",
- "@iconify-json/simple-icons": "^1.1.97",
"@nuxt/content": "^2.12.1",
+ "@nuxt/eslint": "^0.3.10",
"@nuxt/fonts": "^0.5.1",
- "@nuxt/image": "^1.6.0",
+ "@nuxt/image": "^1.7.0",
+ "@nuxt/ui": "^2.16.0",
"@nuxt/ui-pro": "^1.1.0",
"dayjs": "^1.11.10",
"nuxt": "^3.11.2",
- "nuxt-og-image": "^3.0.0-rc"
+ "nuxt-og-image": "^3.0.0-rc.53",
+ "rehype-katex": "^7.0.0",
+ "remark-math": "^6.0.0",
+ "vue-tsc": "^2.0.16"
},
"devDependencies": {
- "@nuxt/eslint-config": "^0.2.0",
- "@nuxthq/studio": "^1.0.13",
- "@typescript-eslint/eslint-plugin": "^7.7.1",
- "@typescript-eslint/parser": "^7.7.1",
- "@vue/eslint-config-prettier": "^9.0.0",
- "@vue/eslint-config-typescript": "^13.0.0",
"@vue/test-utils": "^2.4.5",
"cspell": "^8.7.0",
"eslint": "^8.57.0",
- "eslint-plugin-vue": "^9.25.0",
"husky": "^9.0.11",
"markdownlint": "^0.34.0",
"markdownlint-cli2": "^0.13.0",
"nuxt-headlessui": "^1.2.0",
"prettier": "^3.2.5",
"prettier-eslint": "^16.3.0",
- "prettier-plugin-tailwindcss": "^0.5.14",
- "vue-eslint-parser": "^9.4.2",
- "vue-tsc": "^2.0.7"
+ "prettier-plugin-tailwindcss": "^0.5.14"
}
}
diff --git a/pages/index.vue b/pages/index.vue
index 0717b807..148af5f5 100644
--- a/pages/index.vue
+++ b/pages/index.vue
@@ -17,7 +17,7 @@ useSeoMeta({
@@ -25,7 +25,7 @@ useSeoMeta({
v-for="(guide, index) of guides"
:key="index"
:to="`/tutorials/${guide._dir}`"
- class="rounded-lg border-2 border-transparent transition-colors duration-200 ease-in-out hover:border-zkPurple-300"
+ class="hover:border-zkPurple-300 rounded-lg border-2 border-transparent transition-colors duration-200 ease-in-out"
>
diff --git a/pages/tutorials/[...slug].vue b/pages/tutorials/[...slug].vue
index 38731e53..e13d1de8 100644
--- a/pages/tutorials/[...slug].vue
+++ b/pages/tutorials/[...slug].vue
@@ -77,8 +77,8 @@ const links = [
const communityLinks = [
{
icon: 'i-heroicons-academic-cap-solid',
- label: 'Contribute to the Cookbook',
- to: 'https://github.com/zkSync-Community-Hub/cookbook',
+ label: 'Contribute to Community Code',
+ to: 'https://github.com/zkSync-Community-Hub/community-code',
},
{
icon: 'i-heroicons-chat-bubble-oval-left-ellipsis-16-solid',
diff --git a/pages/tutorials/index.vue b/pages/tutorials/index.vue
index f3077fe0..d605f50a 100644
--- a/pages/tutorials/index.vue
+++ b/pages/tutorials/index.vue
@@ -17,7 +17,7 @@ const { data: guides } = await useAsyncData('tutorials', () =>
v-for="(guide, index) of guides"
:key="index"
:to="`/tutorials/${guide._dir}`"
- class="grid grid-cols-2 items-center gap-4 border-b border-gray-100 p-4 hover:bg-zkSlate-100 dark:border-gray-800 dark:hover:bg-zkSlate-900"
+ class="hover:bg-zkSlate-100 dark:hover:bg-zkSlate-900 grid grid-cols-2 items-center gap-4 border-b border-gray-100 p-4 dark:border-gray-800"
>
{{ guide.title }}
diff --git a/public/favicon copy.ico b/public/favicon copy.ico
deleted file mode 100644
index a8ff125c..00000000
Binary files a/public/favicon copy.ico and /dev/null differ
diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png
deleted file mode 100644
index 3f32357c..00000000
Binary files a/public/favicon-16x16.png and /dev/null differ
diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png
deleted file mode 100644
index 08d65d03..00000000
Binary files a/public/favicon-32x32.png and /dev/null differ
diff --git a/public/favicon.ico b/public/favicon.ico
deleted file mode 100644
index 18993ad9..00000000
Binary files a/public/favicon.ico and /dev/null differ
diff --git a/public/logos/matterlabs-logo.svg b/public/logos/matterlabs-logo.svg
deleted file mode 100644
index f3a75975..00000000
--- a/public/logos/matterlabs-logo.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/public/logos/zksync_logo.svg b/public/logos/zksync_logo.svg
deleted file mode 100644
index eb0b3e66..00000000
--- a/public/logos/zksync_logo.svg
+++ /dev/null
@@ -1,56 +0,0 @@
-
\ No newline at end of file
diff --git a/public/logos/zksync_logo_black.svg b/public/logos/zksync_logo_black.svg
deleted file mode 100644
index 46481a8e..00000000
--- a/public/logos/zksync_logo_black.svg
+++ /dev/null
@@ -1,56 +0,0 @@
-
\ No newline at end of file
diff --git a/public/main.css b/public/main.css
deleted file mode 100644
index 3131d8f1..00000000
--- a/public/main.css
+++ /dev/null
@@ -1,5 +0,0 @@
-body {
- -webkit-font-smoothing: auto !important;
- text-rendering: optimizeLegibility;
- letter-spacing: 0.1px;
-}
diff --git a/public/social-card.png b/public/social-card.png
index 8cd50a17..733c0faf 100644
Binary files a/public/social-card.png and b/public/social-card.png differ
diff --git a/server/plugins/parse-zk-tags.ts b/server/plugins/parse-zk-tags.ts
deleted file mode 100644
index c5f39638..00000000
--- a/server/plugins/parse-zk-tags.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-import zkSyncConfig from '../../content/_zksync.json';
-
-const tags: { [key: string]: string } = {};
-
-export default defineNitroPlugin((nitroApp) => {
- parseConfig(zkSyncConfig, 'zk');
-
- nitroApp.hooks.hook('content:file:beforeParse', (file: { _id: string; body: string }) => {
- if (file._id.endsWith('.md')) {
- Object.keys(tags).forEach((key) => {
- file.body = file.body.replace(new RegExp(`%%${key}%%`, 'g'), tags[key]);
- });
- }
- });
-});
-
-function parseConfig(config: any, prefix: string) {
- Object.keys(config).forEach((key) => {
- const value = config[key];
- const newPrefix = `${prefix}_${key}`;
- if (typeof value === 'object' && value !== null) {
- parseConfig(value, newPrefix);
- } else {
- tags[newPrefix] = value;
- }
- });
-
- return tags;
-}
diff --git a/tailwind.config.ts b/tailwind.config.ts
deleted file mode 100644
index 121dcad8..00000000
--- a/tailwind.config.ts
+++ /dev/null
@@ -1,68 +0,0 @@
-import type { Config } from 'tailwindcss';
-import defaultTheme from 'tailwindcss/defaultTheme';
-
-export default
>{
- theme: {
- extend: {
- fontFamily: {
- sans: ['Raleway', ...defaultTheme.fontFamily.sans],
- serif: ['Montserrat', ...defaultTheme.fontFamily.serif],
- mono: ['Fira Mono', ...defaultTheme.fontFamily.mono],
- },
- colors: {
- zkSlate: {
- 50: '#f6f6f9',
- 100: '#ebebf3',
- 200: '#d3d4e4',
- 300: '#adafcc',
- 400: '#8084b0',
- 500: '#606597',
- 600: '#4c4f7d',
- 700: '#3e4066',
- 800: '#363856',
- 900: '#313249',
- 950: '#0a0a0f',
- },
- zkPurple: {
- 50: '#edefff',
- 100: '#dee2ff',
- 200: '#c4caff',
- 300: '#a0a7ff',
- 400: '#8c8aff',
- 500: '#695bf9',
- 600: '#5a3dee',
- 700: '#4e2fd3',
- 800: '#3f29aa',
- 900: '#362986',
- 950: '#22184e',
- },
- zkBlue: {
- 50: '#edf6ff',
- 100: '#d7eaff',
- 200: '#b9dbff',
- 300: '#88c6ff',
- 400: '#50a7ff',
- 500: '#2881ff',
- 600: '#1e69ff',
- 700: '#0a4aeb',
- 800: '#0f3cbe',
- 900: '#133895',
- 950: '#11235a',
- },
- green: {
- 50: '#EFFDF5',
- 100: '#D9FBE8',
- 200: '#B3F5D1',
- 300: '#75EDAE',
- 400: '#00DC82',
- 500: '#00C16A',
- 600: '#00A155',
- 700: '#007F45',
- 800: '#016538',
- 900: '#0A5331',
- 950: '#052e16',
- },
- },
- },
- },
-};