diff --git a/docs/index.mdx b/docs/index.mdx
index 9950e5bb..77649246 100644
--- a/docs/index.mdx
+++ b/docs/index.mdx
@@ -1,38 +1,10 @@
---
displayed_sidebar: docsEnglish
image: img/scalardl-social-card-preview.png
+hide_table_of_contents: true
+title: ""
---
-# ScalarDL
+import CategoryGrid from '/src/components/Cards/3.11';
-import { CardRowAbout, CardRowGettingStarted, CardRowSamples, CardRowDevelop, CardRowDeploy, CardRowManage, CardRowReference } from '/src/components/Cards/3.11';
-
-ScalarDL is scalable and practical Byzantine fault detection middleware for transactional database systems that achieves correctness, scalability, and database agnosticism.
-
-**About ScalarDL**
-
-
-
-**Getting started**
-
-
-
-**Samples**
-
-
-
-**Develop**
-
-
-
-**Deploy**
-
-
-
-**Manage**
-
-
-
-**Reference**
-
-
+
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 0273ca8c..13c33ec5 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -436,7 +436,7 @@ const config = {
isCloseable: false,
},
zoom: {
- selector: '.markdown :not(em) > img',
+ selector: '.markdown :not(em) > img:not(.youtube-embed img)',
background: {
light: 'rgb(255, 255, 255)',
dark: 'rgb(50, 50, 50)'
diff --git a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/current/index.mdx b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/current/index.mdx
index c28065ff..408eb68b 100644
--- a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/current/index.mdx
+++ b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/current/index.mdx
@@ -1,38 +1,10 @@
---
displayed_sidebar: docsJapanese
image: img/scalardl-social-card-preview.png
+hide_table_of_contents: true
+title: ""
---
-# ScalarDL
+import CategoryGrid from '/src/components/Cards/ja-jp/3.11';
-import { CardRowAbout, CardRowGettingStarted, CardRowSamples, CardRowDevelop, CardRowDeploy, CardRowManage, CardRowReference } from '/src/components/Cards/ja-jp/3.11';
-
-ScalarDL は、正確性、スケーラビリティ、およびデータベース不可知性を実現する、トランザクショナルデータベースシステム用のスケーラブルで実用的なビザンチン故障検出ミドルウェアです。
-
-**ScalarDL について**
-
-
-
-**はじめよう**
-
-
-
-**サンプル**
-
-
-
-**開発**
-
-
-
-**デプロイ**
-
-
-
-**運用**
-
-
-
-**詳細**
-
-
+
diff --git a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.10/index.mdx b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.10/index.mdx
index b4454f8c..1b15d579 100644
--- a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.10/index.mdx
+++ b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.10/index.mdx
@@ -1,51 +1,10 @@
---
displayed_sidebar: docsJapanese
image: img/scalardl-social-card-preview.png
+hide_table_of_contents: true
+title: ""
---
-# ScalarDL
+import CategoryGrid from '/src/components/Cards/ja-jp/3.10';
-import { CardRowAbout, CardRowGettingStarted, CardRowSamples, CardRowDevelop, CardRowDeploy, CardRowManage, CardRowReference } from '/src/components/Cards/ja-jp/3.10';
-
-ScalarDL は、正確性、スケーラビリティ、およびデータベース不可知性を実現する、トランザクショナルデータベースシステム用のスケーラブルで実用的なビザンチン故障検出ミドルウェアです。
-
-**ScalarDL について**
-
-
-
-**はじめよう**
-
-
-
-**サンプル**
-
-
-
-**開発**
-
-
-
-**デプロイ**
-
-
-
-**運用**
-
-
-
-**詳細**
-
-
-
-{/* Saving the following in case we decide to change the layout in the future to a more table grid-like style. */}
-{/*
-| Category | Documentation |
-|:------------------- |:--------------------- |
-| **About ScalarDL** | XXX |
-| **Getting started** | XXX |
-| **Samples** | XXX |
-| **Develop** | XXX |
-| **Deploy** | XXX |
-| **Manage** | XXX |
-| **Reference** | XXX |
-*/}
+
diff --git a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.9/index.mdx b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.9/index.mdx
index b8efc601..31b61a49 100644
--- a/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.9/index.mdx
+++ b/i18n/versioned_docs/ja-jp/docusaurus-plugin-content-docs/version-3.9/index.mdx
@@ -1,51 +1,10 @@
---
displayed_sidebar: docsJapanese
image: img/scalardl-social-card-preview.png
+hide_table_of_contents: true
+title: ""
---
-# ScalarDL
+import CategoryGrid from '/src/components/Cards/ja-jp/3.9';
-import { CardRowAbout, CardRowGettingStarted, CardRowSamples, CardRowDevelop, CardRowDeploy, CardRowManage, CardRowReference } from '/src/components/Cards/ja-jp/3.9';
-
-ScalarDL は、正確性、スケーラビリティ、およびデータベース不可知性を実現する、トランザクショナルデータベースシステム用のスケーラブルで実用的なビザンチン故障検出ミドルウェアです。
-
-**ScalarDL について**
-
-
-
-**はじめよう**
-
-
-
-**サンプル**
-
-
-
-**開発**
-
-
-
-**デプロイ**
-
-
-
-**運用**
-
-
-
-**詳細**
-
-
-
-{/* Saving the following in case we decide to change the layout in the future to a more table grid-like style. */}
-{/*
-| Category | Documentation |
-|:------------------- |:--------------------- |
-| **About ScalarDL** | XXX |
-| **Getting started** | XXX |
-| **Samples** | XXX |
-| **Develop** | XXX |
-| **Deploy** | XXX |
-| **Manage** | XXX |
-| **Reference** | XXX |
-*/}
+
diff --git a/package-lock.json b/package-lock.json
index a5d6f311..8844b6ef 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -31,7 +31,8 @@
"prism-react-renderer": "^2.3.0",
"react": "^18.0.0",
"react-cookie-consent": "9.0.0",
- "react-dom": "^18.0.0"
+ "react-dom": "^18.0.0",
+ "react-lite-youtube-embed": "^2.4.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "^3.7.0",
@@ -16879,6 +16880,16 @@
"react": "^18.0.0 || ^19.0.0"
}
},
+ "node_modules/react-lite-youtube-embed": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/react-lite-youtube-embed/-/react-lite-youtube-embed-2.5.1.tgz",
+ "integrity": "sha512-qH/0RumywPtzSx5SmWX/cUGvB3mSB7zMx3VrDe1UwyCEQ0SX785xnjRAodEel1pu3A3EhZyzSjwmLpfcaUN6KQ==",
+ "license": "MIT",
+ "peerDependencies": {
+ "react": ">=18.2.0",
+ "react-dom": ">=18.2.0"
+ }
+ },
"node_modules/react-loadable": {
"name": "@docusaurus/react-loadable",
"version": "6.0.0",
diff --git a/package.json b/package.json
index bcc7ca24..489f8e80 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,7 @@
"react": "^18.0.0",
"react-cookie-consent": "9.0.0",
"react-dom": "^18.0.0",
+ "react-lite-youtube-embed": "^2.4.0",
"@typebot.io/react": "0.3.47"
},
"devDependencies": {
diff --git a/src/components/Cards/3.10.tsx b/src/components/Cards/3.10.tsx
index e03cc5e0..559f10a7 100644
--- a/src/components/Cards/3.10.tsx
+++ b/src/components/Cards/3.10.tsx
@@ -11,297 +11,220 @@ import React from 'react';
import clsx from 'clsx';
import Translate from '@docusaurus/Translate';
import Link from '@docusaurus/Link';
+import LiteYouTubeEmbed from 'react-lite-youtube-embed';
+import 'react-lite-youtube-embed/dist/LiteYouTubeEmbed.css';
+import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
+import { faBook } from '@fortawesome/free-solid-svg-icons';
-const CardsAbout = [
+const recentFeatures = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'overview',
- },
- description: (
-
- Overview
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'implementation',
- },
- description: (
-
- Implementation
-
- ),
- },
-]
-
-const CardsGettingStarted = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started',
- },
- description: (
-
- Getting started with ScalarDL Ledger
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started-auditor',
- },
- description: (
-
- Getting started with ScalarDL Auditor
-
- ),
- },
-]
-
-const CardsSamples = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'installation-with-docker',
- },
- description: (
-
- Set up ScalarDL locally in Docker
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'applications/simple-bank-account',
- },
- description: (
-
- Run a bank account application
-
- ),
- },
-]
+ name: 'Recent features',
+ categoryLinks: [
+ // Links should be to docs about features that have been introduced in this version or the previous version.
+ // To add a link, use the format ['link1', 'link2']. Links should be relative to the docs directory and not be anchor links.
+ // To add a label, use the format ['label1', 'label2'].
+ {
+ cell: 0, // First cell
+ links: ['use-generic-contracts'],
+ labels: ['Use Generic Contracts and Functions']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['how-to-write-applications-with-generic-contracts'],
+ labels: ['Write a ScalarDL Application with Generic Contracts']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalardl-command-reference'],
+ labels: ['ScalarDL Client Command Reference']
+ }
+ ]
+ }
+];
-const CardsDevelop = [
+const categories = [
{
- // name: 'For database engineers',
- // image: '.png',
- url: {
- page: 'use-generic-contracts',
- },
- description: (
-
- Use Generic Contracts and Functions
-
- ),
+ name: 'About ScalarDL',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['overview'],
+ labels: ['ScalarDL Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['design'],
+ labels: ['Design']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['requirements'],
+ labels: ['Requirements']
+ }
+ ]
},
{
- // name: 'For infrastructure engineers',
- // image: '.png',
- url: {
- page: 'how-to-write-applications',
- },
- description: (
-
- Write a ScalarDL Application in Java
-
- ),
+ name: 'Quickstart',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['quickstart-overview'],
+ labels: ['Quickstart Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['getting-started'],
+ labels: ['Getting Started with ScalarDL Ledger']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['getting-started-auditor'],
+ labels: ['Getting Started with ScalarDL Auditor']
+ }
+ ]
},
-]
-
-const CardsDeploy = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/SetupDatabaseForAWS',
- },
- description: (
-
- Set up a database for ScalarDL on AWS
-
- ),
+ name: 'Develop',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['develop-overview'],
+ labels: ['Develop Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['how-to-write-applications'],
+ labels: ['Write a ScalarDL Application in Java']
+ },
+ {
+ cell: 2, // Third cell
+ links: [''],
+ labels: ['']
+ }
+ ]
},
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/ProductionChecklistForScalarDLLedger',
- },
- description: (
-
- See the ScalarDL Ledger production checklist
-
- ),
+ name: 'Deploy',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['deploy-overview'],
+ labels: ['Deploy Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['helm-charts/getting-started-scalardl-auditor'],
+ labels: ['Deploy ScalarDL Ledger and Auditor locally by Using Helm Chart']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/ManualDeploymentGuideScalarDLAuditorOnEKS'],
+ labels: ['Deploy ScalarDL Ledger and Auditor on Amazon EKS']
+ }
+ ]
},
-]
-
-const CardsManage = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/K8sMonitorGuide',
- },
- description: (
-
- Monitor ScalarDL in a Kubernetes cluster
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/BackupRestoreGuide',
- },
- description: (
-
- Back up and restore in a Kubernetes environment
-
- ),
- },
-]
-
-const CardsReference = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'compatibility',
- },
- description: (
-
- Compatibility matrix
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalardl-benchmarks',
- },
- description: (
-
- Benchmarking tools
-
- ),
- },
+ name: 'Manage',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['manage-overview'],
+ labels: ['Manage Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['scalar-kubernetes/HowToScaleScalarDL'],
+ labels: ['Scale ScalarDL']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/HowToUpgradeScalarDL'],
+ labels: ['Upgrade ScalarDL']
+ }
+ ]
+ }
];
-interface Props {
- // name: string;
- // image: string;
- url: {
- page?: string;
- };
- description: JSX.Element;
-}
-
-function Card({ /* name, image,*/ url, description }: Props) {
+const CategoryGrid = () => {
return (
-
-
-
- {/*
- }
- */}
+
+ {/* Hero section */}
+
+
+
ScalarDL
+
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.
- );
-}
+export default CategoryGrid;
diff --git a/src/components/Cards/3.11.tsx b/src/components/Cards/3.11.tsx
index e03cc5e0..a79af037 100644
--- a/src/components/Cards/3.11.tsx
+++ b/src/components/Cards/3.11.tsx
@@ -11,297 +11,220 @@ import React from 'react';
import clsx from 'clsx';
import Translate from '@docusaurus/Translate';
import Link from '@docusaurus/Link';
+import LiteYouTubeEmbed from 'react-lite-youtube-embed';
+import 'react-lite-youtube-embed/dist/LiteYouTubeEmbed.css';
+import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
+import { faBook } from '@fortawesome/free-solid-svg-icons';
-const CardsAbout = [
+const recentFeatures = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'overview',
- },
- description: (
-
- Overview
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'implementation',
- },
- description: (
-
- Implementation
-
- ),
- },
-]
-
-const CardsGettingStarted = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started',
- },
- description: (
-
- Getting started with ScalarDL Ledger
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started-auditor',
- },
- description: (
-
- Getting started with ScalarDL Auditor
-
- ),
- },
-]
-
-const CardsSamples = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'installation-with-docker',
- },
- description: (
-
- Set up ScalarDL locally in Docker
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'applications/simple-bank-account',
- },
- description: (
-
- Run a bank account application
-
- ),
- },
-]
+ name: 'Recent features',
+ categoryLinks: [
+ // Links should be to docs about features that have been introduced in this version or the previous version.
+ // To add a link, use the format ['link1', 'link2']. Links should be relative to the docs directory and not be anchor links.
+ // To add a label, use the format ['label1', 'label2'].
+ {
+ cell: 0, // First cell
+ links: ['use-table-oriented-generic-contracts'],
+ labels: ['Use Table-Oriented Generic Contracts']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['use-generic-contracts'],
+ labels: ['Use Generic Contracts and Functions']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['how-to-write-applications-with-generic-contracts'],
+ labels: ['Write a ScalarDL Application with Generic Contracts']
+ }
+ ]
+ }
+];
-const CardsDevelop = [
+const categories = [
{
- // name: 'For database engineers',
- // image: '.png',
- url: {
- page: 'use-generic-contracts',
- },
- description: (
-
- Use Generic Contracts and Functions
-
- ),
+ name: 'About ScalarDL',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['overview'],
+ labels: ['ScalarDL Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['design'],
+ labels: ['Design']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['requirements'],
+ labels: ['Requirements']
+ }
+ ]
},
{
- // name: 'For infrastructure engineers',
- // image: '.png',
- url: {
- page: 'how-to-write-applications',
- },
- description: (
-
- Write a ScalarDL Application in Java
-
- ),
+ name: 'Quickstart',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['quickstart-overview'],
+ labels: ['Quickstart Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['getting-started'],
+ labels: ['Getting Started with ScalarDL Ledger']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['getting-started-auditor'],
+ labels: ['Getting Started with ScalarDL Auditor']
+ }
+ ]
},
-]
-
-const CardsDeploy = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/SetupDatabaseForAWS',
- },
- description: (
-
- Set up a database for ScalarDL on AWS
-
- ),
+ name: 'Develop',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['develop-overview'],
+ labels: ['Develop Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['use-generic-contracts'],
+ labels: ['Use Generic Contracts and Functions']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['how-to-write-applications'],
+ labels: ['Write a ScalarDL Application in Java']
+ }
+ ]
},
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/ProductionChecklistForScalarDLLedger',
- },
- description: (
-
- See the ScalarDL Ledger production checklist
-
- ),
+ name: 'Deploy',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['deploy-overview'],
+ labels: ['Deploy Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['helm-charts/getting-started-scalardl-auditor'],
+ labels: ['Deploy ScalarDL Ledger and Auditor Locally by Using Helm Chart']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/ManualDeploymentGuideScalarDLAuditorOnEKS'],
+ labels: ['Deploy ScalarDL Ledger and Auditor on Amazon EKS']
+ }
+ ]
},
-]
-
-const CardsManage = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/K8sMonitorGuide',
- },
- description: (
-
- Monitor ScalarDL in a Kubernetes cluster
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/BackupRestoreGuide',
- },
- description: (
-
- Back up and restore in a Kubernetes environment
-
- ),
- },
-]
-
-const CardsReference = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'compatibility',
- },
- description: (
-
- Compatibility matrix
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalardl-benchmarks',
- },
- description: (
-
- Benchmarking tools
-
- ),
- },
+ name: 'Manage',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['manage-overview'],
+ labels: ['Manage Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['scalar-kubernetes/HowToScaleScalarDL'],
+ labels: ['Scale ScalarDL']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/HowToUpgradeScalarDL'],
+ labels: ['Upgrade ScalarDL']
+ }
+ ]
+ }
];
-interface Props {
- // name: string;
- // image: string;
- url: {
- page?: string;
- };
- description: JSX.Element;
-}
-
-function Card({ /* name, image,*/ url, description }: Props) {
+const CategoryGrid = () => {
return (
-
-
-
- {/*
- }
- */}
+
+ {/* Hero section */}
+
+
+
ScalarDL
+
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.
- );
-}
+export default CategoryGrid;
diff --git a/src/components/Cards/3.9.tsx b/src/components/Cards/3.9.tsx
index 6f741d1c..ad84c60c 100644
--- a/src/components/Cards/3.9.tsx
+++ b/src/components/Cards/3.9.tsx
@@ -11,297 +11,220 @@ import React from 'react';
import clsx from 'clsx';
import Translate from '@docusaurus/Translate';
import Link from '@docusaurus/Link';
+import LiteYouTubeEmbed from 'react-lite-youtube-embed';
+import 'react-lite-youtube-embed/dist/LiteYouTubeEmbed.css';
+import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
+import { faBook } from '@fortawesome/free-solid-svg-icons';
-const CardsAbout = [
+const recentFeatures = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'overview',
- },
- description: (
-
- Overview
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'implementation',
- },
- description: (
-
- Implementation
-
- ),
- },
-]
-
-const CardsGettingStarted = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started',
- },
- description: (
-
- Getting started with ScalarDL Ledger
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'getting-started-auditor',
- },
- description: (
-
- Getting started with ScalarDL Auditor
-
- ),
- },
-]
-
-const CardsSamples = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'installation-with-docker',
- },
- description: (
-
- Set up ScalarDL locally in Docker
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'applications/simple-bank-account',
- },
- description: (
-
- Run a bank account application
-
- ),
- },
-]
+ name: 'Recent features',
+ categoryLinks: [
+ // Links should be to docs about features that have been introduced in this version or the previous version.
+ // To add a link, use the format ['link1', 'link2']. Links should be relative to the docs directory and not be anchor links.
+ // To add a label, use the format ['label1', 'label2'].
+ {
+ cell: 0, // First cell
+ links: ['scalardl-command-reference'],
+ labels: ['ScalarDL Client Command Reference']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['scalar-licensing'],
+ labels: ['Configure a Product License Key']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/AwsMarketplaceGuide?products=scalardl-ledger'],
+ labels: ['Install ScalarDL through AWS Marketplace']
+ }
+ ]
+ }
+];
-const CardsDevelop = [
+const categories = [
{
- // name: 'For database engineers',
- // image: '.png',
- url: {
- page: 'schema-loader',
- },
- description: (
-
- Load a database schema
-
- ),
+ name: 'About ScalarDL',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['overview'],
+ labels: ['ScalarDL Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['design'],
+ labels: ['Design']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['requirements'],
+ labels: ['Requirements']
+ }
+ ]
},
{
- // name: 'For infrastructure engineers',
- // image: '.png',
- url: {
- page: 'ca/caclient-getting-started',
- },
- description: (
-
- Get a certificate for the network
-
- ),
+ name: 'Quickstart',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['quickstart-overview'],
+ labels: ['Quickstart Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['getting-started'],
+ labels: ['Getting Started with ScalarDL Ledger']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['getting-started-auditor'],
+ labels: ['Getting Started with ScalarDL Auditor']
+ }
+ ]
},
-]
-
-const CardsDeploy = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/SetupDatabaseForAWS',
- },
- description: (
-
- Set up a database for ScalarDL on AWS
-
- ),
+ name: 'Develop',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['develop-overview'],
+ labels: ['Develop Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['how-to-write-contract'],
+ labels: ['Write a Contract']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['how-to-write-applications'],
+ labels: ['Write a ScalarDL Application in Java']
+ }
+ ]
},
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/ProductionChecklistForScalarDLLedger',
- },
- description: (
-
- See the ScalarDL Ledger production checklist
-
- ),
+ name: 'Deploy',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['deploy-overview'],
+ labels: ['Deploy Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['helm-charts/getting-started-scalardl-auditor'],
+ labels: ['Deploy ScalarDL Ledger and Auditor locally by Using Helm Charts']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/ManualDeploymentGuideScalarDLAuditorOnEKS'],
+ labels: ['Deploy ScalarDL Ledger and Auditor on Amazon EKS']
+ }
+ ]
},
-]
-
-const CardsManage = [
{
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/K8sMonitorGuide',
- },
- description: (
-
- Monitor ScalarDL in a Kubernetes cluster
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalar-kubernetes/BackupRestoreGuide',
- },
- description: (
-
- Back up and restore in a Kubernetes environment
-
- ),
- },
-]
-
-const CardsReference = [
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'compatibility',
- },
- description: (
-
- Compatibility matrix
-
- ),
- },
- {
- // name: '',
- // image: '.png',
- url: {
- page: 'scalardl-benchmarks',
- },
- description: (
-
- Benchmarking tools
-
- ),
- },
+ name: 'Manage',
+ categoryLinks: [
+ // To add a link, use the format ['link1', 'link2']
+ // To add a label, use the format ['label1', 'label2']
+ {
+ cell: 0, // First cell
+ links: ['manage-overview'],
+ labels: ['Manage Overview']
+ },
+ {
+ cell: 1, // Second cell
+ links: ['scalar-kubernetes/HowToScaleScalarDL'],
+ labels: ['Scale ScalarDL']
+ },
+ {
+ cell: 2, // Third cell
+ links: ['scalar-kubernetes/HowToUpgradeScalarDL'],
+ labels: ['Upgrade ScalarDL']
+ }
+ ]
+ }
];
-interface Props {
- // name: string;
- // image: string;
- url: {
- page?: string;
- };
- description: JSX.Element;
-}
-
-function Card({ /* name, image,*/ url, description }: Props) {
+const CategoryGrid = () => {
return (
-
-
-
- {/*
- }
- */}
+
+ {/* Hero section */}
+
+
+
ScalarDL
+
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.
ScalarDL is middleware for realizing a tamper-evident database system by detecting arbitrary faults (that is, Byzantine faults), such as data tampering and malicious attacks, in transactional database systems. It achieves such detection in a scalable and practical way like no other with its novel consensus algorithm.