diff --git a/.eslintrc b/.eslintrc
index 9dcc2fedb..1dc3ae1e0 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -7,7 +7,7 @@
"prefer-destructuring": "warn",
"react/no-array-index-key": "warn",
"arrow-body-style": "warn",
- "import/prefer-default-export": "warn",
+ "import/prefer-default-export": "off",
"@typescript-eslint/default-param-last": "warn",
"react/no-unstable-nested-components": "warn",
"react/jsx-no-useless-fragment": "warn",
diff --git a/cypress/e2e/layout/footer.spec.ts b/cypress/e2e/layout/footer.spec.ts
index f6abaf6a1..514571a14 100644
--- a/cypress/e2e/layout/footer.spec.ts
+++ b/cypress/e2e/layout/footer.spec.ts
@@ -9,136 +9,96 @@ context(" on desktop", () => {
});
it("should have Defichain Logo", () => {
- cy.findByTestId("Footer.Logo").should("be.visible");
- });
-
- it("should Footer Heading", () => {
- cy.findByTestId("Footer.Heading")
- .should("be.visible")
- .should("have.text", "Native Decentralized Finance for Bitcoin.");
+ cy.findByTestId("Footer.Web.Logo").should("be.visible");
});
it("should have Footer sitemap links", () => {
- cy.findByTestId("FooterSectionSitemap.DFI")
+ cy.findByTestId("FooterColumn.DFI")
.should("be.visible")
.should("have.attr", "href", "/dfi");
- cy.findByTestId("FooterSectionSitemap.DEX")
+ cy.findByTestId("FooterColumn.investTradeNEarn")
.should("be.visible")
- .should("have.attr", "href", "/dex");
- cy.findByTestId("FooterSectionSitemap.Developers")
+ .should("have.attr", "href", "/investtradeearn");
+ cy.findByTestId("FooterColumn.decentralizedExchange")
.should("be.visible")
- .should("have.attr", "href", "/developers");
- cy.findByTestId("FooterSectionSitemap.Ecosystem")
+ .should("have.attr", "href", "/decentralizedExchange");
+ cy.findByTestId("FooterColumn.wallets")
.should("be.visible")
- .should("have.attr", "href", "/ecosystem");
- cy.findByTestId("FooterSectionSitemap.Downloads")
+ .should("have.attr", "href", "/wallets");
+ cy.findByTestId("FooterColumn.masternodes")
.should("be.visible")
- .should("have.attr", "href", "/downloads");
- cy.findByTestId("FooterSectionSitemap.Media")
+ .should("have.attr", "href", "/masternodes");
+ cy.findByTestId("FooterColumn.defichainapps")
.should("be.visible")
- .should("have.attr", "href", "/media");
- cy.findByTestId("FooterSectionSitemap.Learn")
+ .should("have.attr", "href", "/defichainapps");
+ cy.findByTestId("FooterColumn.defimetachain")
.should("be.visible")
- .should("have.attr", "href", "/learn");
- cy.findByTestId("FooterSectionSitemap.Security")
+ .should("have.attr", "href", "/defimetachain");
+ cy.findByTestId("FooterColumn.defiscan")
.should("be.visible")
- .should("have.attr", "href", "/security");
- cy.findByTestId("FooterSectionSitemap.BugBounty")
+ .should("have.attr", "href", "/defiscan");
+ cy.findByTestId("FooterColumn.governance")
.should("be.visible")
- .should("have.attr", "href", "/bug-bounty");
- cy.findByTestId("FooterSectionSitemap.WhitePaper")
+ .should("have.attr", "href", "/governance");
+ cy.findByTestId("FooterColumn.bugbounty")
.should("be.visible")
- .should("have.attr", "href", "/white-paper");
- cy.findByTestId("FooterSectionSitemap.DFCBlog")
+ .should("have.attr", "href", "/bugbounty");
+ cy.findByTestId("FooterColumn.100macceleratorprogram")
.should("be.visible")
- .should("have.attr", "href", "https://blog.defichain.com/");
- cy.findByTestId("FooterSectionSitemap.Newsletter")
+ .should("have.attr", "href", "/100macceleratorprogram");
+ cy.findByTestId("FooterColumn.jellyfishsdk")
.should("be.visible")
- .should("have.attr", "href", "https://bit.ly/3yQxtmW");
- });
-
- it("should have Footer Social links", () => {
- cy.findByTestId("FooterExternalLink.Twitter")
+ .should("have.attr", "href", "/jellyfishsdk");
+ cy.findByTestId("FooterColumn.defichainwhitepaper")
.should("be.visible")
- .should("have.attr", "href", "https://twitter.com/defichain");
- cy.findByTestId("FooterExternalLink.Youtube")
- .should("be.visible")
- .should("have.attr", "href", "https://www.youtube.com/DeFiChain");
- cy.findByTestId("FooterExternalLink.Reddit")
- .should("be.visible")
- .should("have.attr", "href", "https://www.reddit.com/r/defiblockchain/");
- cy.findByTestId("FooterExternalLink.Linkedin")
- .should("be.visible")
- .should(
- "have.attr",
- "href",
- "https://www.linkedin.com/company/defichain"
- );
- cy.findByTestId("FooterExternalLink.Discord")
- .should("be.visible")
- .should("have.attr", "href", "https://discord.com/invite/py55egyaGy");
- cy.findByTestId("FooterExternalLink.Github")
+ .should("have.attr", "href", "/defichainwhitepaper");
+ cy.findByTestId("FooterColumn.github")
.should("be.visible")
.should("have.attr", "href", "https://github.com/DeFiCh/ain");
- cy.findByTestId("FooterExternalLink.CoinMarketCap")
- .should("be.visible")
- .should(
- "have.attr",
- "href",
- "https://coinmarketcap.com/community/profile/DeFiChain"
- );
- cy.findByTestId("FooterExternalLink.Facebook")
+ cy.findByTestId("FooterColumn.developerResource")
.should("be.visible")
- .should(
- "have.attr",
- "href",
- "https://www.facebook.com/defichain.official"
- );
- cy.findByTestId("FooterExternalLink.MerchUS")
+ .should("have.attr", "href", "/developerResource");
+ cy.findByTestId("FooterColumn.mediaAssets")
.should("be.visible")
- .should("have.attr", "href", "https://defichain.myspreadshop.com/");
- cy.findByTestId("FooterExternalLink.MerchUK")
+ .should("have.attr", "href", "/mediaAssets");
+ cy.findByTestId("FooterColumn.security")
.should("be.visible")
- .should("have.attr", "href", "https://defichain.myspreadshop.co.uk/");
- cy.findByTestId("FooterExternalLink.TelegramEN")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain");
- cy.findByTestId("FooterExternalLink.TelegramES")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/official_defichain_es");
- cy.findByTestId("FooterExternalLink.TelegramDE")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_DE");
- cy.findByTestId("FooterExternalLink.TelegramIT")
+ .should("have.attr", "href", "/security");
+ cy.findByTestId("FooterColumn.blog")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_IT");
- cy.findByTestId("FooterExternalLink.TelegramZH")
+ .should("have.attr", "href", "/blog");
+ cy.findByTestId("FooterColumn.newsletter")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_ZH");
- cy.findByTestId("FooterExternalLink.TelegramFR")
+ .should("have.attr", "href", "/newsletter");
+ });
+
+ it("should have Footer Social links", () => {
+ cy.findByTestId("SocialsRow.GitHub")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_FR");
- cy.findByTestId("FooterExternalLink.TelegramTR")
+ .should("have.attr", "href", "https://github.com/DeFiCh/ain");
+ cy.findByTestId("SocialsRow.Reddit")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_TR");
- cy.findByTestId("FooterExternalLink.TelegramRU")
+ .should("have.attr", "href", "https://www.reddit.com/r/defiblockchain/");
+ cy.findByTestId("SocialsRow.YouTube")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_ru");
- cy.findByTestId("FooterExternalLink.TelegramIndonesia")
+ .should("have.attr", "href", "https://www.youtube.com/DeFiChain");
+ cy.findByTestId("SocialsRow.Telegram")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_indonesia");
- cy.findByTestId("FooterExternalLink.TelegramPT")
+ .should("have.attr", "href", "https://t.me/defiblockchain");
+ cy.findByTestId("SocialsRow.Twitter")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_PT");
+ .should("have.attr", "href", "https://twitter.com/defichain");
});
it("should tiny footer links", () => {
- cy.findByTestId("Footer.Privacy")
+ cy.findByTestId("Footer.Web.Privacy")
.should("be.visible")
.should("have.attr", "href", "/privacy-policy");
+ cy.findByTestId("Footer.Web.Terms")
+ .should("be.visible")
+ .should("have.attr", "href", "/terms-of-use");
});
});
-
context(" on mobile", () => {
before(() => {
cy.visit("/");
@@ -150,125 +110,93 @@ context(" on mobile", () => {
});
it("should have Defichain Logo", () => {
- cy.findByTestId("Footer.Logo").should("be.visible");
- });
-
- it("should Footer Heading", () => {
- cy.findByTestId("Footer.Heading")
- .should("be.visible")
- .should("have.text", "Native Decentralized Finance for Bitcoin.");
+ cy.findByTestId("Footer.Mobile.Logo").should("be.visible");
});
it("should have Footer sitemap links", () => {
- cy.findByTestId("FooterSectionSitemap.DFI")
+ cy.findByTestId("FooterColumn.DFI")
.should("be.visible")
.should("have.attr", "href", "/dfi");
- cy.findByTestId("FooterSectionSitemap.DEX")
+ cy.findByTestId("FooterColumn.investTradeNEarn")
.should("be.visible")
- .should("have.attr", "href", "/dex");
- cy.findByTestId("FooterSectionSitemap.Developers")
+ .should("have.attr", "href", "/investtradeearn");
+ cy.findByTestId("FooterColumn.decentralizedExchange")
.should("be.visible")
- .should("have.attr", "href", "/developers");
- cy.findByTestId("FooterSectionSitemap.Ecosystem")
+ .should("have.attr", "href", "/decentralizedExchange");
+ cy.findByTestId("FooterColumn.wallets")
.should("be.visible")
- .should("have.attr", "href", "/ecosystem");
- cy.findByTestId("FooterSectionSitemap.Downloads")
+ .should("have.attr", "href", "/wallets");
+ cy.findByTestId("FooterColumn.masternodes")
.should("be.visible")
- .should("have.attr", "href", "/downloads");
- cy.findByTestId("FooterSectionSitemap.Media")
+ .should("have.attr", "href", "/masternodes");
+ cy.findByTestId("FooterColumn.defichainapps")
.should("be.visible")
- .should("have.attr", "href", "/media");
- cy.findByTestId("FooterSectionSitemap.Learn")
+ .should("have.attr", "href", "/defichainapps");
+ cy.findByTestId("FooterColumn.defimetachain")
.should("be.visible")
- .should("have.attr", "href", "/learn");
- cy.findByTestId("FooterSectionSitemap.Security")
+ .should("have.attr", "href", "/defimetachain");
+ cy.findByTestId("FooterColumn.defiscan")
.should("be.visible")
- .should("have.attr", "href", "/security");
- cy.findByTestId("FooterSectionSitemap.BugBounty")
- .should("be.visible")
- .should("have.attr", "href", "/bug-bounty");
- cy.findByTestId("FooterSectionSitemap.WhitePaper")
+ .should("have.attr", "href", "/defiscan");
+ cy.findByTestId("FooterColumn.governance")
.should("be.visible")
- .should("have.attr", "href", "/white-paper");
- cy.findByTestId("FooterSectionSitemap.DFCBlog")
+ .should("have.attr", "href", "/governance");
+ cy.findByTestId("FooterColumn.bugbounty")
.should("be.visible")
- .should("have.attr", "href", "https://blog.defichain.com/");
- cy.findByTestId("FooterSectionSitemap.Newsletter")
+ .should("have.attr", "href", "/bugbounty");
+ cy.findByTestId("FooterColumn.100macceleratorprogram")
.should("be.visible")
- .should("have.attr", "href", "https://bit.ly/3yQxtmW");
- });
-
- it("should have Footer Social links", () => {
- cy.findByTestId("FooterExternalLink.Twitter")
- .should("be.visible")
- .should("have.attr", "href", "https://twitter.com/defichain");
- cy.findByTestId("FooterExternalLink.Youtube")
- .should("be.visible")
- .should("have.attr", "href", "https://www.youtube.com/DeFiChain");
- cy.findByTestId("FooterExternalLink.Reddit")
- .should("be.visible")
- .should("have.attr", "href", "https://www.reddit.com/r/defiblockchain/");
- cy.findByTestId("FooterExternalLink.Linkedin")
+ .should("have.attr", "href", "/100macceleratorprogram");
+ cy.findByTestId("FooterColumn.jellyfishsdk")
.should("be.visible")
- .should(
- "have.attr",
- "href",
- "https://www.linkedin.com/company/defichain"
- );
- cy.findByTestId("FooterExternalLink.Discord")
+ .should("have.attr", "href", "/jellyfishsdk");
+ cy.findByTestId("FooterColumn.defichainwhitepaper")
.should("be.visible")
- .should("have.attr", "href", "https://discord.com/invite/py55egyaGy");
- cy.findByTestId("FooterExternalLink.Github")
+ .should("have.attr", "href", "/defichainwhitepaper");
+ cy.findByTestId("FooterColumn.github")
.should("be.visible")
.should("have.attr", "href", "https://github.com/DeFiCh/ain");
- cy.findByTestId("FooterExternalLink.Facebook")
+ cy.findByTestId("FooterColumn.developerResource")
.should("be.visible")
- .should(
- "have.attr",
- "href",
- "https://www.facebook.com/defichain.official"
- );
- cy.findByTestId("FooterExternalLink.MerchUS")
+ .should("have.attr", "href", "/developerResource");
+ cy.findByTestId("FooterColumn.mediaAssets")
.should("be.visible")
- .should("have.attr", "href", "https://defichain.myspreadshop.com/");
- cy.findByTestId("FooterExternalLink.MerchUK")
+ .should("have.attr", "href", "/mediaAssets");
+ cy.findByTestId("FooterColumn.security")
.should("be.visible")
- .should("have.attr", "href", "https://defichain.myspreadshop.co.uk/");
- cy.findByTestId("FooterExternalLink.TelegramEN")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain");
- cy.findByTestId("FooterExternalLink.TelegramES")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/official_defichain_es");
- cy.findByTestId("FooterExternalLink.TelegramDE")
- .should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_DE");
- cy.findByTestId("FooterExternalLink.TelegramIT")
+ .should("have.attr", "href", "/security");
+ cy.findByTestId("FooterColumn.blog")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_IT");
- cy.findByTestId("FooterExternalLink.TelegramZH")
+ .should("have.attr", "href", "/blog");
+ cy.findByTestId("FooterColumn.newsletter")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_ZH");
- cy.findByTestId("FooterExternalLink.TelegramFR")
+ .should("have.attr", "href", "/newsletter");
+ });
+
+ it("should have Footer Social links", () => {
+ cy.findByTestId("SocialsRow.GitHub")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_FR");
- cy.findByTestId("FooterExternalLink.TelegramTR")
+ .should("have.attr", "href", "https://github.com/DeFiCh/ain");
+ cy.findByTestId("SocialsRow.Reddit")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_TR");
- cy.findByTestId("FooterExternalLink.TelegramRU")
+ .should("have.attr", "href", "https://www.reddit.com/r/defiblockchain/");
+ cy.findByTestId("SocialsRow.YouTube")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_ru");
- cy.findByTestId("FooterExternalLink.TelegramIndonesia")
+ .should("have.attr", "href", "https://www.youtube.com/DeFiChain");
+ cy.findByTestId("SocialsRow.Telegram")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defichain_indonesia");
- cy.findByTestId("FooterExternalLink.TelegramPT")
+ .should("have.attr", "href", "https://t.me/defiblockchain");
+ cy.findByTestId("SocialsRow.Twitter")
.should("be.visible")
- .should("have.attr", "href", "https://t.me/defiblockchain_PT");
+ .should("have.attr", "href", "https://twitter.com/defichain");
});
it("should tiny footer links", () => {
- cy.findByTestId("Footer.Privacy")
+ cy.findByTestId("Footer.Mobile.Privacy")
.should("be.visible")
.should("have.attr", "href", "/privacy-policy");
+ cy.findByTestId("Footer.Mobile.Terms")
+ .should("be.visible")
+ .should("have.attr", "href", "/terms-of-use");
});
});
diff --git a/package.json b/package.json
index 4831c434e..ddfc45438 100644
--- a/package.json
+++ b/package.json
@@ -14,13 +14,16 @@
"playground:start": "docker-compose rm -fsv && docker-compose up"
},
"dependencies": {
+ "@defichain/whale-api-client": "^3.29.1",
"@headlessui/react": "^1.7.13",
"@waveshq/standard-defichain-jellyfishsdk": "^0.45.0",
"@waveshq/standard-web": "^0.45.0",
"classnames": "^2.3.2",
"gray-matter": "^4.0.3",
+ "bignumber.js": "^9.1.0",
"lodash": "^4.17.21",
"next-i18next": "^12.1.0",
+ "react-countup": "^6.4.1",
"react-markdown": "^8.0.5",
"react-number-format": "^5.1.4",
"react-slick": "^0.29.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 238af584a..eeec07be1 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2,6 +2,7 @@ lockfileVersion: 5.4
specifiers:
'@cypress/code-coverage': ^3.10.0
+ '@defichain/whale-api-client': ^3.29.1
'@headlessui/react': ^1.7.13
'@netlify/plugin-nextjs': ^4.31.0
'@tailwindcss/typography': ^0.5.9
@@ -15,12 +16,14 @@ specifiers:
autoprefixer: ^10.4.13
babel-plugin-istanbul: ^6.1.1
babel-plugin-jsx-remove-data-test-id: ^3.0.0
+ bignumber.js: ^9.1.0
classnames: ^2.3.2
cypress: ^12.7.0
gray-matter: ^4.0.3
lodash: ^4.17.21
next-i18next: ^12.1.0
postcss: ^8.4.21
+ react-countup: ^6.4.1
react-markdown: ^8.0.5
react-number-format: ^5.1.4
react-slick: ^0.29.0
@@ -33,13 +36,16 @@ specifiers:
tailwindcss: ^3.2.7
dependencies:
+ '@defichain/whale-api-client': 3.30.0_defichain@3.30.0
'@headlessui/react': 1.7.13_biqbaboplfbrettd7655fr4n2y
'@waveshq/standard-defichain-jellyfishsdk': 0.45.0_@types+tar-fs@2.0.1
'@waveshq/standard-web': 0.45.0_kkrdj5zxwfugttiio4xepb7j2q
+ bignumber.js: 9.1.1
classnames: 2.3.2
gray-matter: 4.0.3
lodash: 4.17.21
next-i18next: 12.1.0_ld2jel3hspngo3u5lti2kgl2sq
+ react-countup: 6.4.1_q2tyk3gci27qk4qoatek53e4vi
react-markdown: 8.0.5_pmekkgnqduwlme35zpnqhenc34
react-number-format: 5.1.4_biqbaboplfbrettd7655fr4n2y
react-slick: 0.29.0_biqbaboplfbrettd7655fr4n2y
@@ -2391,6 +2397,38 @@ packages:
reselect: 4.1.7
dev: false
+ /@rollup/plugin-babel/6.0.3_@babel+core@7.21.0:
+ resolution: {integrity: sha512-fKImZKppa1A/gX73eg4JGo+8kQr/q1HBQaCGKECZ0v4YBBv3lFqi14+7xyApECzvkLTHCifx+7ntcrvtBIRcpg==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+ '@types/babel__core': ^7.1.9
+ rollup: ^1.20.0||^2.0.0||^3.0.0
+ peerDependenciesMeta:
+ '@types/babel__core':
+ optional: true
+ rollup:
+ optional: true
+ dependencies:
+ '@babel/core': 7.21.0
+ '@babel/helper-module-imports': 7.18.6
+ '@rollup/pluginutils': 5.0.2
+ dev: false
+
+ /@rollup/pluginutils/5.0.2:
+ resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+ dependencies:
+ '@types/estree': 1.0.0
+ estree-walker: 2.0.2
+ picomatch: 2.3.1
+ dev: false
+
/@rushstack/eslint-patch/1.2.0:
resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==}
dev: true
@@ -2476,13 +2514,13 @@ packages:
resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==}
dependencies:
'@types/eslint': 8.21.1
- '@types/estree': 0.0.51
+ '@types/estree': 1.0.0
dev: true
/@types/eslint/8.21.1:
resolution: {integrity: sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==}
dependencies:
- '@types/estree': 0.0.51
+ '@types/estree': 1.0.0
'@types/json-schema': 7.0.11
dev: true
@@ -2490,6 +2528,9 @@ packages:
resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==}
dev: true
+ /@types/estree/1.0.0:
+ resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==}
+
/@types/glob/8.1.0:
resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==}
dependencies:
@@ -3875,6 +3916,10 @@ packages:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
dev: false
+ /countup.js/2.5.0:
+ resolution: {integrity: sha512-/59H8Q6wzu6VfHeqGUgXoyh6kgboGr5mALmRKi8YA11DlcaXSnT1PZG6mTyBRLco4ZjExKlmfNHeMbQgZvis9Q==}
+ dev: false
+
/cpu-features/0.0.4:
resolution: {integrity: sha512-fKiZ/zp1mUwQbnzb9IghXtHtDoTMtNeb8oYGx6kX2SYfhnG0HNdBEBIzB9b5KlXu5DQPhfy3mInbBxFcgwAr3A==}
engines: {node: '>=10.0.0'}
@@ -4903,6 +4948,10 @@ packages:
engines: {node: '>=4.0'}
dev: true
+ /estree-walker/2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ dev: false
+
/esutils/2.0.3:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
@@ -7719,6 +7768,20 @@ packages:
minimist: 1.2.8
strip-json-comments: 2.0.1
+ /react-countup/6.4.1_q2tyk3gci27qk4qoatek53e4vi:
+ resolution: {integrity: sha512-FxQ7qaNnnbA+Px9RebOZY4Tbawa1bhgpVPlUqRemZb90mh3f3OqyHVgr1SZqnJgaRxR3uEYqgkszgkDgFVCeEw==}
+ peerDependencies:
+ react: '>= 16.3.0'
+ dependencies:
+ '@rollup/plugin-babel': 6.0.3_@babel+core@7.21.0
+ countup.js: 2.5.0
+ react: 18.2.0
+ transitivePeerDependencies:
+ - '@babel/core'
+ - '@types/babel__core'
+ - rollup
+ dev: false
+
/react-dom/18.2.0_react@18.2.0:
resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
peerDependencies:
diff --git a/public/assets/icon/AppsIcon.tsx b/public/assets/icon/AppsIcon.tsx
new file mode 100644
index 000000000..90bc342bf
--- /dev/null
+++ b/public/assets/icon/AppsIcon.tsx
@@ -0,0 +1,52 @@
+export function AppsIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/DFIIcon.tsx b/public/assets/icon/DFIIcon.tsx
new file mode 100644
index 000000000..abdd2a50c
--- /dev/null
+++ b/public/assets/icon/DFIIcon.tsx
@@ -0,0 +1,36 @@
+export function DFIIcon({
+ className,
+ width = 40,
+ height = 40,
+ id,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+ id?: string;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/DeveloperResourceIcon.tsx b/public/assets/icon/DeveloperResourceIcon.tsx
new file mode 100644
index 000000000..1d64f5a12
--- /dev/null
+++ b/public/assets/icon/DeveloperResourceIcon.tsx
@@ -0,0 +1,36 @@
+export function DeveloperResourceIcon({
+ className,
+ width = 41,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/DexIcon.tsx b/public/assets/icon/DexIcon.tsx
new file mode 100644
index 000000000..98b67db7a
--- /dev/null
+++ b/public/assets/icon/DexIcon.tsx
@@ -0,0 +1,27 @@
+export function DexIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/GitHubIcon.tsx b/public/assets/icon/GitHubIcon.tsx
new file mode 100644
index 000000000..498097e29
--- /dev/null
+++ b/public/assets/icon/GitHubIcon.tsx
@@ -0,0 +1,28 @@
+export function GitHubIcon({
+ className,
+ width = 41,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/GovernanceIcon.tsx b/public/assets/icon/GovernanceIcon.tsx
new file mode 100644
index 000000000..2a9d692a4
--- /dev/null
+++ b/public/assets/icon/GovernanceIcon.tsx
@@ -0,0 +1,27 @@
+export function GovernanceIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/InvestIcon.tsx b/public/assets/icon/InvestIcon.tsx
new file mode 100644
index 000000000..9d4f04d08
--- /dev/null
+++ b/public/assets/icon/InvestIcon.tsx
@@ -0,0 +1,36 @@
+export function InvestIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/JellyfishIcon.tsx b/public/assets/icon/JellyfishIcon.tsx
new file mode 100644
index 000000000..65ca6e4be
--- /dev/null
+++ b/public/assets/icon/JellyfishIcon.tsx
@@ -0,0 +1,27 @@
+export function JellyfishIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/MasternodeIcon.tsx b/public/assets/icon/MasternodeIcon.tsx
new file mode 100644
index 000000000..31485c3b3
--- /dev/null
+++ b/public/assets/icon/MasternodeIcon.tsx
@@ -0,0 +1,44 @@
+export function MasternodeIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/MediaAssetsIcon.tsx b/public/assets/icon/MediaAssetsIcon.tsx
new file mode 100644
index 000000000..73d3d97a4
--- /dev/null
+++ b/public/assets/icon/MediaAssetsIcon.tsx
@@ -0,0 +1,44 @@
+export function MediaAssetsIcon({
+ className,
+ width = 41,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/NewsLetterIcon.tsx b/public/assets/icon/NewsLetterIcon.tsx
new file mode 100644
index 000000000..59824aac1
--- /dev/null
+++ b/public/assets/icon/NewsLetterIcon.tsx
@@ -0,0 +1,36 @@
+export function NewsLetterIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/SecurityIcon.tsx b/public/assets/icon/SecurityIcon.tsx
new file mode 100644
index 000000000..cd839cd56
--- /dev/null
+++ b/public/assets/icon/SecurityIcon.tsx
@@ -0,0 +1,28 @@
+export function SecurityIcon({
+ className,
+ width = 41,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/WalletIcon.tsx b/public/assets/icon/WalletIcon.tsx
new file mode 100644
index 000000000..3601b70c8
--- /dev/null
+++ b/public/assets/icon/WalletIcon.tsx
@@ -0,0 +1,27 @@
+export function WalletIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/icon/WhitePaperIcon.tsx b/public/assets/icon/WhitePaperIcon.tsx
new file mode 100644
index 000000000..50063dd56
--- /dev/null
+++ b/public/assets/icon/WhitePaperIcon.tsx
@@ -0,0 +1,60 @@
+export function WhitePaperIcon({
+ className,
+ width = 40,
+ height = 40,
+}: {
+ className: string;
+ width?: number;
+ height?: number;
+}) {
+ return (
+
+ );
+}
diff --git a/public/assets/img/blockchainFeatures/blockchainFeaturesBg.png b/public/assets/img/blockchainFeatures/blockchainFeaturesBg.png
new file mode 100644
index 000000000..349a08a01
Binary files /dev/null and b/public/assets/img/blockchainFeatures/blockchainFeaturesBg.png differ
diff --git a/public/assets/img/downloads/dfxpng.png b/public/assets/img/downloads/dfxpng.png
deleted file mode 100644
index 526eda3d1..000000000
Binary files a/public/assets/img/downloads/dfxpng.png and /dev/null differ
diff --git a/public/assets/img/downloads/jly.svg b/public/assets/img/downloads/jly.svg
deleted file mode 100644
index d21646220..000000000
--- a/public/assets/img/downloads/jly.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/public/assets/img/downloads/saiive.png b/public/assets/img/downloads/saiive.png
deleted file mode 100644
index dd68f442c..000000000
Binary files a/public/assets/img/downloads/saiive.png and /dev/null differ
diff --git a/public/assets/img/ecosystem/Dapp.tsx b/public/assets/img/ecosystem/Dapp.tsx
new file mode 100644
index 000000000..271ba8784
--- /dev/null
+++ b/public/assets/img/ecosystem/Dapp.tsx
@@ -0,0 +1,45 @@
+import { Video } from "@components/commons/Video";
+
+interface WalletAppsProps {
+ id: string;
+}
+
+export function WalletApps(props: WalletAppsProps): JSX.Element {
+ const { id } = props;
+ return (
+
+
+
+ );
+}
+
+export function WalletAppsHover(props: WalletAppsProps): JSX.Element {
+ const { id } = props;
+ return (
+
+
+
+ );
+}
diff --git a/public/assets/img/ecosystem/GlassCube.tsx b/public/assets/img/ecosystem/GlassCube.tsx
new file mode 100644
index 000000000..248ee2324
--- /dev/null
+++ b/public/assets/img/ecosystem/GlassCube.tsx
@@ -0,0 +1,17 @@
+import Image from "next/image";
+import GlassCubeIcon from "./glass-cube.png";
+import GlassCubeIconHover from "./glass-cube-hover.png";
+
+interface GlassCubeProps {
+ id: string;
+}
+
+export function GlassCube(props: GlassCubeProps): JSX.Element {
+ const { id } = props;
+ return ;
+}
+
+export function GlassCubeHover(props: GlassCubeProps): JSX.Element {
+ const { id } = props;
+ return ;
+}
diff --git a/public/assets/img/ecosystem/MetaDfiCoin.tsx b/public/assets/img/ecosystem/MetaDfiCoin.tsx
new file mode 100644
index 000000000..8e3276754
--- /dev/null
+++ b/public/assets/img/ecosystem/MetaDfiCoin.tsx
@@ -0,0 +1,27 @@
+import Image from "next/image";
+import MetaDFICoinIcon from "./meta-dfi-coin.png";
+import MetaDFICoinIconHover from "./meta-dfi-coin-hover.png";
+import MetaDFICoinEllipse from "./meta-dfi-coin-ellipse.png";
+
+interface MetaDfiCoinProps {
+ id: string;
+}
+
+export function MetaDfiCoin(props: MetaDfiCoinProps): JSX.Element {
+ const { id } = props;
+ return (
+
+
+
+
+ );
+}
+
+export function MetaDfiCoinHover(props: MetaDfiCoinProps): JSX.Element {
+ const { id } = props;
+ return ;
+}
diff --git a/public/assets/img/ecosystem/Quantum.tsx b/public/assets/img/ecosystem/Quantum.tsx
new file mode 100644
index 000000000..bea2118c2
--- /dev/null
+++ b/public/assets/img/ecosystem/Quantum.tsx
@@ -0,0 +1,27 @@
+import Image from "next/image";
+import QuantumDonut from "./quantum-donut.png";
+import QuantumEllipseBackground from "./quantum-bg-gradient.png";
+
+interface QuantumProps {
+ id: string;
+}
+export function Quantum(props: QuantumProps): JSX.Element {
+ const { id } = props;
+ return (
+
+ {/* className not used as id is being used in globals.css */}
+
+
+
+ );
+}
+
+export function QuantumHover(props: QuantumProps): JSX.Element {
+ const { id } = props;
+ return (
+
+
+
+
+ );
+}
diff --git a/public/assets/img/ecosystem/dfi-logo-vector.png b/public/assets/img/ecosystem/dfi-logo-vector.png
new file mode 100644
index 000000000..380de6d30
Binary files /dev/null and b/public/assets/img/ecosystem/dfi-logo-vector.png differ
diff --git a/public/assets/img/ecosystem/glass-cube-hover.png b/public/assets/img/ecosystem/glass-cube-hover.png
new file mode 100644
index 000000000..a5048aee2
Binary files /dev/null and b/public/assets/img/ecosystem/glass-cube-hover.png differ
diff --git a/public/assets/img/ecosystem/glass-cube.png b/public/assets/img/ecosystem/glass-cube.png
new file mode 100644
index 000000000..ec2903cfb
Binary files /dev/null and b/public/assets/img/ecosystem/glass-cube.png differ
diff --git a/public/assets/img/ecosystem/meta-dfi-coin-ellipse.png b/public/assets/img/ecosystem/meta-dfi-coin-ellipse.png
new file mode 100644
index 000000000..a0bb200cc
Binary files /dev/null and b/public/assets/img/ecosystem/meta-dfi-coin-ellipse.png differ
diff --git a/public/assets/img/ecosystem/meta-dfi-coin-hover.png b/public/assets/img/ecosystem/meta-dfi-coin-hover.png
new file mode 100644
index 000000000..4b9663de0
Binary files /dev/null and b/public/assets/img/ecosystem/meta-dfi-coin-hover.png differ
diff --git a/public/assets/img/ecosystem/meta-dfi-coin.png b/public/assets/img/ecosystem/meta-dfi-coin.png
new file mode 100644
index 000000000..2458427c4
Binary files /dev/null and b/public/assets/img/ecosystem/meta-dfi-coin.png differ
diff --git a/public/assets/img/ecosystem/quantum-bg-gradient.png b/public/assets/img/ecosystem/quantum-bg-gradient.png
new file mode 100644
index 000000000..aa628a9b0
Binary files /dev/null and b/public/assets/img/ecosystem/quantum-bg-gradient.png differ
diff --git a/public/assets/img/ecosystem/quantum-donut-hover.png b/public/assets/img/ecosystem/quantum-donut-hover.png
new file mode 100644
index 000000000..3537dc282
Binary files /dev/null and b/public/assets/img/ecosystem/quantum-donut-hover.png differ
diff --git a/public/assets/img/ecosystem/quantum-donut.png b/public/assets/img/ecosystem/quantum-donut.png
new file mode 100644
index 000000000..d4992d10b
Binary files /dev/null and b/public/assets/img/ecosystem/quantum-donut.png differ
diff --git a/public/assets/img/ecosystem/quantum.png b/public/assets/img/ecosystem/quantum.png
new file mode 100644
index 000000000..914ca206f
Binary files /dev/null and b/public/assets/img/ecosystem/quantum.png differ
diff --git a/public/assets/img/explore/arrow.png b/public/assets/img/explore/arrow.png
new file mode 100644
index 000000000..41d46669f
Binary files /dev/null and b/public/assets/img/explore/arrow.png differ
diff --git a/public/assets/img/explore/cube.png b/public/assets/img/explore/cube.png
new file mode 100644
index 000000000..323464960
Binary files /dev/null and b/public/assets/img/explore/cube.png differ
diff --git a/public/assets/img/explore/dapps.png b/public/assets/img/explore/dapps.png
new file mode 100644
index 000000000..795274dc9
Binary files /dev/null and b/public/assets/img/explore/dapps.png differ
diff --git a/public/assets/img/explore/diamond-coin.png b/public/assets/img/explore/diamond-coin.png
new file mode 100644
index 000000000..305616fb2
Binary files /dev/null and b/public/assets/img/explore/diamond-coin.png differ
diff --git a/public/assets/img/explore/explore-wallet-cli.png b/public/assets/img/explore/explore-wallet-cli.png
new file mode 100644
index 000000000..35b699153
Binary files /dev/null and b/public/assets/img/explore/explore-wallet-cli.png differ
diff --git a/public/assets/img/downloads/dfi.png b/public/assets/img/explore/explore-wallet-dfi.png
similarity index 100%
rename from public/assets/img/downloads/dfi.png
rename to public/assets/img/explore/explore-wallet-dfi.png
diff --git a/public/assets/img/downloads/dfinode.png b/public/assets/img/explore/explore-wallet-dfinode.png
similarity index 100%
rename from public/assets/img/downloads/dfinode.png
rename to public/assets/img/explore/explore-wallet-dfinode.png
diff --git a/public/assets/img/downloads/dfiwallet.png b/public/assets/img/explore/explore-wallet-dfiwallet.png
similarity index 100%
rename from public/assets/img/downloads/dfiwallet.png
rename to public/assets/img/explore/explore-wallet-dfiwallet.png
diff --git a/public/assets/img/explore/explore-wallet-dfx.png b/public/assets/img/explore/explore-wallet-dfx.png
new file mode 100644
index 000000000..f1f6934ee
Binary files /dev/null and b/public/assets/img/explore/explore-wallet-dfx.png differ
diff --git a/public/assets/img/explore/explore-wallet-jellywallet.png b/public/assets/img/explore/explore-wallet-jellywallet.png
new file mode 100644
index 000000000..26f471fe6
Binary files /dev/null and b/public/assets/img/explore/explore-wallet-jellywallet.png differ
diff --git a/public/assets/img/explore/metal-dfi-coin.png b/public/assets/img/explore/metal-dfi-coin.png
new file mode 100644
index 000000000..3684bf25b
Binary files /dev/null and b/public/assets/img/explore/metal-dfi-coin.png differ
diff --git a/public/assets/img/explore/phone.png b/public/assets/img/explore/phone.png
new file mode 100644
index 000000000..1e642f8ef
Binary files /dev/null and b/public/assets/img/explore/phone.png differ
diff --git a/public/assets/img/downloads/quantum.png b/public/assets/img/explore/quantum.png
similarity index 100%
rename from public/assets/img/downloads/quantum.png
rename to public/assets/img/explore/quantum.png
diff --git a/public/assets/img/footer/arrow_1.png b/public/assets/img/footer/arrow_1.png
new file mode 100644
index 000000000..9f27b0663
Binary files /dev/null and b/public/assets/img/footer/arrow_1.png differ
diff --git a/public/assets/img/footer/transparent_coin_2.png b/public/assets/img/footer/transparent_coin_2.png
new file mode 100644
index 000000000..66bdfbe33
Binary files /dev/null and b/public/assets/img/footer/transparent_coin_2.png differ
diff --git a/public/assets/img/header/header-hover-dfi-coin.png b/public/assets/img/header/header-hover-dfi-coin.png
new file mode 100644
index 000000000..c7339c0bb
Binary files /dev/null and b/public/assets/img/header/header-hover-dfi-coin.png differ
diff --git a/public/assets/img/header/header-hover-jellyfish.png b/public/assets/img/header/header-hover-jellyfish.png
new file mode 100644
index 000000000..c56ea32e1
Binary files /dev/null and b/public/assets/img/header/header-hover-jellyfish.png differ
diff --git a/public/assets/img/header/header-jellyfish.png b/public/assets/img/header/header-jellyfish.png
new file mode 100644
index 000000000..9690c9f3c
Binary files /dev/null and b/public/assets/img/header/header-jellyfish.png differ
diff --git a/public/assets/img/header/header-metal-dfi-coin.png b/public/assets/img/header/header-metal-dfi-coin.png
new file mode 100644
index 000000000..f9dec1474
Binary files /dev/null and b/public/assets/img/header/header-metal-dfi-coin.png differ
diff --git a/public/assets/img/herobanner/hero-banner-coin-arrow.png b/public/assets/img/herobanner/hero-banner-coin-arrow.png
new file mode 100644
index 000000000..7d16378e3
Binary files /dev/null and b/public/assets/img/herobanner/hero-banner-coin-arrow.png differ
diff --git a/public/assets/img/herobanner/hero-banner-cube.png b/public/assets/img/herobanner/hero-banner-cube.png
new file mode 100644
index 000000000..9e340e0d5
Binary files /dev/null and b/public/assets/img/herobanner/hero-banner-cube.png differ
diff --git a/public/assets/img/herobanner/hero-banner-dfi-coin.png b/public/assets/img/herobanner/hero-banner-dfi-coin.png
new file mode 100644
index 000000000..4d669c1c6
Binary files /dev/null and b/public/assets/img/herobanner/hero-banner-dfi-coin.png differ
diff --git a/public/assets/img/herobanner/hero-banner-diamond-coin.png b/public/assets/img/herobanner/hero-banner-diamond-coin.png
new file mode 100644
index 000000000..6ee818872
Binary files /dev/null and b/public/assets/img/herobanner/hero-banner-diamond-coin.png differ
diff --git a/public/assets/img/index/dficoin.png b/public/assets/img/index/dficoin.png
new file mode 100644
index 000000000..0290e8315
Binary files /dev/null and b/public/assets/img/index/dficoin.png differ
diff --git a/public/assets/img/index/index-cube.png b/public/assets/img/index/index-cube.png
new file mode 100644
index 000000000..38dbe30fb
Binary files /dev/null and b/public/assets/img/index/index-cube.png differ
diff --git a/public/assets/img/index/jellyfish.png b/public/assets/img/index/jellyfish.png
new file mode 100644
index 000000000..b07d2c818
Binary files /dev/null and b/public/assets/img/index/jellyfish.png differ
diff --git a/public/assets/img/index/ready-for-flex-mobile.png b/public/assets/img/index/ready-for-flex-mobile.png
new file mode 100644
index 000000000..4a7f70f83
Binary files /dev/null and b/public/assets/img/index/ready-for-flex-mobile.png differ
diff --git a/public/assets/img/index/ready-for-flexibility.png b/public/assets/img/index/ready-for-flexibility.png
new file mode 100644
index 000000000..25aed191a
Binary files /dev/null and b/public/assets/img/index/ready-for-flexibility.png differ
diff --git a/public/assets/svg/hero/dfi-coin-video.mp4 b/public/assets/svg/hero/dfi-coin-video.mp4
new file mode 100644
index 000000000..88c2bd8f0
Binary files /dev/null and b/public/assets/svg/hero/dfi-coin-video.mp4 differ
diff --git a/public/assets/video/dapp-hover.mov b/public/assets/video/dapp-hover.mov
new file mode 100644
index 000000000..9bddfb541
Binary files /dev/null and b/public/assets/video/dapp-hover.mov differ
diff --git a/public/assets/video/dapp.mov b/public/assets/video/dapp.mov
new file mode 100644
index 000000000..890879254
Binary files /dev/null and b/public/assets/video/dapp.mov differ
diff --git a/public/locales/de/common.json b/public/locales/de/common.json
index 5f402d447..fd9ce8fb3 100644
--- a/public/locales/de/common.json
+++ b/public/locales/de/common.json
@@ -2,5 +2,8 @@
"title": "DeFiChain",
"Punctuation": {
"fullStop": "."
+ },
+ "StartExploring": {
+ "button": "Beginne mit der Erkundung"
}
}
diff --git a/public/locales/de/layout.json b/public/locales/de/layout.json
index 3b9cdca3a..a3302f389 100644
--- a/public/locales/de/layout.json
+++ b/public/locales/de/layout.json
@@ -10,39 +10,209 @@
"learn": "Mehr erfahren",
"buy": "Erwerb von",
"dfcblog": "Blog",
- "bloglink": "https://blog.defichain.com/de/"
+ "bloglink": "https://blog.defichain.com/de/",
+ "explore": "Erkunden",
+ "build": "Bauen",
+ "community": "Community"
+ },
+ "explore": {
+ "title": "Entdecke DeFiChain",
+ "labels": [
+ {
+ "title": "$DFI",
+ "subtitle": "Erfahre mehr über den Token"
+ },
+ {
+ "title": "Dezentrale Börse",
+ "subtitle": "Maximiere dein Vermögen"
+ },
+ {
+ "title": "Wallets",
+ "subtitle": "Bewahre Aktiva auf deine eigene Weise auf"
+ },
+ {
+ "title": "Masternodes",
+ "subtitle": "DefiChain-Staking"
+ }
+ ],
+ "image": {
+ "title": "$DFI",
+ "subtitle": "Erfahre mehr über den Token und wo du ihn erhältst"
+ }
+ },
+ "ecosystem": {
+ "info": [
+ {
+ "title": "EINTAUCHEN IN DAS ÖKOSYSTEM",
+ "labels": [
+ {
+ "title": "DeFiChain Apps",
+ "subtitle": "Erlebe DeFiChain in Aktion"
+ },
+ {
+ "title": "DeFi Meta Chain",
+ "subtitle": "Die Möglichkeiten von DeFiChain erweitern"
+ },
+ {
+ "title": "Governance",
+ "subtitle": "Für DeFiChain, von DeFiChain"
+ }
+ ]
+ },
+ {
+ "title": "ENGAGIERE DICH BEI DEFICHAIN",
+ "labels": [
+ {
+ "title": "Bug-Bounty"
+ },
+ {
+ "title": "100 Mio. $ Accelerator-Programm"
+ }
+ ]
+ }
+ ],
+ "image": {
+ "subtitle": "Mit der Sicherheit von Bitcoin und der Flexibilität von Ethereum"
+ }
+ },
+ "build": {
+ "title": "MIT DEM BAUEN BEGINNEN",
+ "labels": [
+ {
+ "title": "Jellyfish-SDK",
+ "subtitle": "Bauen für moderne DeFi-Anwendungen"
+ },
+ {
+ "title": "DeFiChain White Paper",
+ "subtitle": "Grundlagen von DeFiChain"
+ },
+ {
+ "title": "GitHub",
+ "subtitle": "Verfolge die neuesten Entwicklungen"
+ },
+ {
+ "title": "Ressourcen für Entwickler",
+ "subtitle": "Mit dem Bauen auf DeFiChain beginnen"
+ },
+ {
+ "title": "Medien",
+ "subtitle": "Markenressourcen von DeFiChain"
+ },
+ {
+ "title": "Sicherheit",
+ "subtitle": "Vertrauensunabhängig und dezentral"
+ }
+ ]
+ },
+ "community": {
+ "info": [
+ {
+ "title": "EINTAUCHEN IN DAS ÖKOSYSTEM",
+ "labels": [
+ {
+ "title": "DeFiChain Blog",
+ "subtitle": "Erfahre die neuesten Nachrichten"
+ }
+ ]
+ },
+ {
+ "title": "COMMUNITYS BEITRETEN",
+ "labels": [
+ {
+ "title": "Reddit"
+ },
+ {
+ "title": "Twitter"
+ },
+ {
+ "title": "Facebook"
+ },
+ {
+ "title": "GitHub"
+ },
+ {
+ "title": "Youtube"
+ },
+ {
+ "title": "LinkedIn"
+ },
+ {
+ "title": "Discord"
+ },
+ {
+ "title": "CoinMarketCap"
+ },
+ {
+ "title": "Telegram (EN)"
+ },
+ {
+ "title": "Telegram (DE)"
+ },
+ {
+ "title": "Telegram (FR)"
+ },
+ {
+ "title": "Telegram (ES)"
+ },
+ {
+ "title": "Telegram (IT)"
+ },
+ {
+ "title": "Telegram (ID)"
+ },
+ {
+ "title": "Telegram (TR)"
+ },
+ {
+ "title": "Telegram (ZH)"
+ },
+ {
+ "title": "Telegram (RU)"
+ },
+ {
+ "title": "Telegram (PT)"
+ }
+ ]
+ }
+ ]
}
},
"footer": {
- "title": "Natives dezentrales Finanzwesen, basierend auf Bitcoin",
"sitemap": {
- "foundation": "Foundation",
- "dfi": "$DFI",
- "dex": "DEX",
- "developers": "Entwickler",
- "ecosystem": "Ökosystem",
- "downloads": "Downloads",
- "media": "Medien",
- "learn": "Mehr erfahren",
- "security": "Sicherheit",
- "bugbounty": "Bug-Bounty",
- "whitepaper": "White Paper",
- "dfcblog": "Blog",
- "language": "de",
- "newsletter": "Newsletter"
+ "EXPLORE": {
+ "category": "ERKUNDEN",
+ "dfi": "$DFI",
+ "decentralizedExchange": "Dezentrale Börse",
+ "wallets": "Wallets",
+ "masternodes": "Masternodes"
+ },
+ "ECOSYSTEM": {
+ "category": "ÖKOSYSTEM",
+ "defichainapps": "DeFiChain Apps",
+ "defimetachain": "DeFi MetaChain",
+ "defiscan": "DeFiScan",
+ "governance": "Governance",
+ "bugbounty": "Bug-Bounty",
+ "100macceleratorprogram": "100 Mio. $ Accelerator-Programm"
+ },
+ "BUILD": {
+ "category": "BAUEN",
+ "jellyfishsdk": "Jellyfish SDK",
+ "defichainwhitepaper": "DeFiChain White Paper",
+ "github": "GitHub",
+ "developerResource": "Ressourcen für Entwickler",
+ "mediaAssets": "Medien",
+ "security": "Sicherheit"
+ },
+ "COMMUNITY": {
+ "category": "COMMUNITY",
+ "blog": "Blog",
+ "newsletter": "Newsletter"
+ }
},
- "social": {
- "title": "Soziale Netze",
- "twitter": "Twitter",
- "youtube": "YouTube",
- "reddit": "Reddit",
- "linkedin": "LinkedIn",
- "facebook": "Facebook",
- "discord": "Discord",
- "github": "GitHub",
- "coinMarketCap": "CoinMarketCap",
- "telegram": "Telegram",
- "merch": "Verkaufsartikel"
+ "bottomlink": {
+ "privacy": "Datenschutzrichtlinie",
+ "terms": "Nutzungsbedingungen"
}
}
}
diff --git a/public/locales/de/page-index.json b/public/locales/de/page-index.json
index d37edd4a0..b25175360 100644
--- a/public/locales/de/page-index.json
+++ b/public/locales/de/page-index.json
@@ -4,9 +4,31 @@
"desc": "Eine Blockchain für schnelle, intelligente und transparente dezentrale Finanzdienstleistungen, die für jeden zugänglich sind."
},
"Header": {
- "title": "Natives dezentrales Finanzwesen, basierend auf Bitcoin",
+ "title": "Die Verbindung von alten und neuen Welten",
"desc": "Eine Blockchain für schnelle, intelligente und transparente dezentrale Finanzdienstleistungen, die für jeden zugänglich sind."
},
+ "StatisticsSection": {
+ "dfiMinted": {
+ "title": "INSGESAMT GEMINTETE DFI",
+ "desc": "{{perc}} des maximalen Angebots"
+ },
+ "tvlLocked": {
+ "title": "TOTAL VALUE LOCKED IN USD",
+ "mobileTitle": "TVL IN US-DOLLAR",
+ "desc": "Pool | Masternodes | Vaults"
+ },
+ "masternodes": {
+ "title": "MASTERNODES",
+ "desc": "${{perc}} gesperrt"
+ }
+ },
+ "ReadyForFlexibilitySection": {
+ "label": "BEREIT FÜR FLEXIBILITÄT",
+ "title": "DeFi MetaChain, DAS Upgrade",
+ "descParaOne": "DeFi MetaChain ist eine EVM-kompatible Blockchain, die Proof of Authority (POA) verwendet und parallel zur nativen DeFiChain-Blockchain läuft.",
+ "descParaTwo": "Lies die Dokumentation, um mit dem Einsatz von DeFi-Anwendungen der nächsten Generation auf DeFi MetaChain zu beginnen.",
+ "button": "DeFi MetaChain erkunden"
+ },
"CardsSection": {
"cards": [
{
@@ -697,5 +719,31 @@
}
]
}
+ },
+ "BlockchainFeatureSection": {
+ "title": "Entwickelt für das dezentrale Finanzwesen",
+ "subtitle": "NICHT TURING-VOLLSTÄNDIGE BLOCKCHAIN",
+ "desc": "DeFiChain bietet umfassende Funktionen, die auf die Bedürfnisse der Distributed Ledger Technology (DLT)-Community zugeschnitten sind und bei denen Einfachheit, schneller Durchsatz und Sicherheit im Vordergrund stehen.",
+ "button": "Mit der Entwicklung beginnen",
+ "THROUGHPUT": {
+ "title": "DURCHSATZ",
+ "desc": "Unerreicht hoher Transaktionsdurchsatz für alle Transaktionen."
+ },
+ "SECURITY": {
+ "title": "SICHERHEIT",
+ "desc": "Nicht Turing-vollständig für reduzierte Angriffsvektoren."
+ },
+ "IMMUTABILITY": {
+ "title": "UNVERÄNDERLICHKEIT",
+ "desc": "Verbindet das Beste von Proof-of-Stake mit der Sicherheit von Bitcoin."
+ },
+ "DEVELOPMENT": {
+ "title": "ENTWICKLUNG",
+ "desc": "Schnelles Erstellen einer Vielzahl von DeFi-Apps auf einer Chain."
+ },
+ "VARIETY": {
+ "title": "VIELFALT",
+ "desc": "Breites Spektrum an kryptoökonomischen Finanzoperationen."
+ }
}
}
diff --git a/public/locales/en-US/common.json b/public/locales/en-US/common.json
index 5f402d447..2da2dfd78 100644
--- a/public/locales/en-US/common.json
+++ b/public/locales/en-US/common.json
@@ -2,5 +2,8 @@
"title": "DeFiChain",
"Punctuation": {
"fullStop": "."
+ },
+ "StartExploring": {
+ "button": "Start exploring"
}
}
diff --git a/public/locales/en-US/layout.json b/public/locales/en-US/layout.json
index bac54c39b..40b85acf1 100644
--- a/public/locales/en-US/layout.json
+++ b/public/locales/en-US/layout.json
@@ -10,39 +10,209 @@
"learn": "Learn",
"buy": "Buy",
"dfcblog": "Blog",
- "bloglink": "https://blog.defichain.com/"
+ "bloglink": "https://blog.defichain.com/",
+ "explore": "Explore",
+ "build": "Build",
+ "community": "Community"
+ },
+ "explore": {
+ "title": "EXPLORE DEFICHAIN",
+ "labels": [
+ {
+ "title": "$DFI",
+ "subtitle": "Learn about the token"
+ },
+ {
+ "title": "Decentralized Exchange",
+ "subtitle": "Maximize your assets"
+ },
+ {
+ "title": "Wallets",
+ "subtitle": "Store assets in your own way"
+ },
+ {
+ "title": "Masternodes",
+ "subtitle": "Place your stakes in DeFiChain"
+ }
+ ],
+ "image": {
+ "title": "$DFI",
+ "subtitle": "Learn about the token and where to get"
+ }
+ },
+ "ecosystem": {
+ "info": [
+ {
+ "title": "DIVE INTO THE ECOSYSTEM",
+ "labels": [
+ {
+ "title": "DeFiChain Apps",
+ "subtitle": "See DeFiChain in action"
+ },
+ {
+ "title": "DeFi Meta Chain",
+ "subtitle": "Expand possibilities in DeFiChain"
+ },
+ {
+ "title": "Governance",
+ "subtitle": "For DeFiChain, By DeFiChain"
+ }
+ ]
+ },
+ {
+ "title": "GET INVOLVED WITH DEFICHAIN",
+ "labels": [
+ {
+ "title": "Bug Bounty"
+ },
+ {
+ "title": "$100M Accelerator Program"
+ }
+ ]
+ }
+ ],
+ "image": {
+ "subtitle": "Powered by the Security of Bitcoin & Flexibility of Ethereum"
+ }
+ },
+ "build": {
+ "title": "START BUILDING",
+ "labels": [
+ {
+ "title": "Jellyfish SDK",
+ "subtitle": "Build for modern DeFi Applications"
+ },
+ {
+ "title": "DeFiChain White Paper",
+ "subtitle": "Fundamentals of DeFiChain"
+ },
+ {
+ "title": "GitHub",
+ "subtitle": "Track recent developments"
+ },
+ {
+ "title": "Developer Resources",
+ "subtitle": "Start building on DeFiChain"
+ },
+ {
+ "title": "Media Assets",
+ "subtitle": "Brand resources of DeFiChain"
+ },
+ {
+ "title": "Security",
+ "subtitle": "Trustless and decentralized"
+ }
+ ]
+ },
+ "community": {
+ "info": [
+ {
+ "title": "DIVE INTO THE ECOSYSTEM",
+ "labels": [
+ {
+ "title": "DeFiChain Blog",
+ "subtitle": "Get the latest news"
+ }
+ ]
+ },
+ {
+ "title": "JOIN COMMUNITIES",
+ "labels": [
+ {
+ "title": "Reddit"
+ },
+ {
+ "title": "Twitter"
+ },
+ {
+ "title": "Facebook"
+ },
+ {
+ "title": "GitHub"
+ },
+ {
+ "title": "Youtube"
+ },
+ {
+ "title": "LinkedIn"
+ },
+ {
+ "title": "Discord"
+ },
+ {
+ "title": "CoinMarketCap"
+ },
+ {
+ "title": "Telegram (EN)"
+ },
+ {
+ "title": "Telegram (DE)"
+ },
+ {
+ "title": "Telegram (FR)"
+ },
+ {
+ "title": "Telegram (ES)"
+ },
+ {
+ "title": "Telegram (IT)"
+ },
+ {
+ "title": "Telegram (ID)"
+ },
+ {
+ "title": "Telegram (TR)"
+ },
+ {
+ "title": "Telegram (ZH)"
+ },
+ {
+ "title": "Telegram (RU)"
+ },
+ {
+ "title": "Telegram (PT)"
+ }
+ ]
+ }
+ ]
}
},
"footer": {
- "title": "Native Decentralized Finance for Bitcoin.",
"sitemap": {
- "foundation": "Foundation",
- "dfi": "$DFI",
- "dex": "DEX",
- "developers": "Developers",
- "ecosystem": "Ecosystem",
- "downloads": "Downloads",
- "media": "Media",
- "learn": "Learn",
- "security": "Security",
- "bugbounty": "Bug Bounty",
- "whitepaper": "White Paper",
- "dfcblog": "Blog",
- "language": "en",
- "newsletter": "Newsletter"
+ "EXPLORE": {
+ "category": "EXPLORE",
+ "dfi": "$DFI",
+ "decentralizedExchange": "Decentralized Exchange",
+ "wallets": "Wallets",
+ "masternodes": "Masternodes"
+ },
+ "ECOSYSTEM": {
+ "category": "ECOSYSTEM",
+ "defichainapps": "DeFiChain Apps",
+ "defimetachain": "DeFi MetaChain",
+ "defiscan": "DeFiScan",
+ "governance": "Governance",
+ "bugbounty": "Bug Bounty",
+ "100macceleratorprogram": "$100M Accelerator Program"
+ },
+ "BUILD": {
+ "category": "BUILD",
+ "jellyfishsdk": "Jellyfish SDK",
+ "defichainwhitepaper": "DeFiChain White Paper",
+ "github": "GitHub",
+ "developerResource": "Developer Resource",
+ "mediaAssets": "Media Assets",
+ "security": "Security"
+ },
+ "COMMUNITY": {
+ "category": "COMMUNITY",
+ "blog": "Blog",
+ "newsletter": "Newsletter"
+ }
},
- "social": {
- "title": "Social",
- "twitter": "Twitter",
- "youtube": "YouTube",
- "reddit": "Reddit",
- "linkedin": "LinkedIn",
- "facebook": "Facebook",
- "discord": "Discord",
- "github": "GitHub",
- "coinMarketCap": "CoinMarketCap",
- "telegram": "Telegram",
- "merch": "Merch"
+ "bottomlink": {
+ "privacy": "Privacy Policy",
+ "terms": "Terms of use"
}
}
}
diff --git a/public/locales/en-US/page-explore-dex.json b/public/locales/en-US/page-explore-dex.json
new file mode 100644
index 000000000..49032253e
--- /dev/null
+++ b/public/locales/en-US/page-explore-dex.json
@@ -0,0 +1,46 @@
+{
+ "heroBanner": {
+ "title": "DECENTRALIZED EXCHANGE",
+ "subtitle": "Enter the world of dTokens",
+ "desc": "Inside DeFiChain’s DEX, you are in full control. Trade, Arbitrage, and Earn from your dTokens."
+ },
+ "statisticsDisplay": {
+ "totalValueLocked": {
+ "title": "TOTAL VALUE LOCKED",
+ "desc": "Data from DeFiScan"
+ },
+ "tradingVolume": {
+ "title": "TRADING VOLUME (24H)",
+ "desc": "Data from DeFiScan"
+ },
+ "tokens": {
+ "title": "TOKENS",
+ "desc": "Crypto • dStocks • ETFs"
+ }
+ },
+ "faq": {
+ "title": "Frequently asked questions",
+ "content": [
+ {
+ "question": "What are dTokens and where can I get them?",
+ "answer": [
+ "Metaverse-based clout-chasing influencer. College Dropout, overenthusiastic founder. Microdosing CryptoPunk rationalist. Cap table joining consumer social app.",
+ "Y-combinator raised Facebook PM. Chamath-like, sketchy venture capitalist. PMF-focused, overfunded LIDAR startup. Ex-Uber resume flexing, FAANG worker.",
+ "Alexis Ohanian-tweeted overhyped ed-Tech series D. Solidity focused crypto mining installation. Out of touch, ad buying venture investor. VR headset wearable network effect. CPG product loving, podcast hosting veteran."
+ ]
+ },
+ {
+ "question": "Can I use any wallet for dTokens?",
+ "answer": ["Hello"]
+ },
+ {
+ "question": "Why are the prices of stock tokens different from the prices from the stocks exchange?",
+ "answer": ["Hello"]
+ },
+ {
+ "question": "What are liquidity pools?",
+ "answer": ["Hello"]
+ }
+ ]
+ }
+}
diff --git a/public/locales/en-US/page-explore-dfi.json b/public/locales/en-US/page-explore-dfi.json
new file mode 100644
index 000000000..18c58af46
--- /dev/null
+++ b/public/locales/en-US/page-explore-dfi.json
@@ -0,0 +1,91 @@
+{
+ "heroBanner": {
+ "title": "EXPLORE THE POWER OF DFI",
+ "subtitle": "Experience DeFi with DFI",
+ "desc": "Our native token unlocks the power of decentralized finance, giving you access to a growing ecosystem of cutting-edge DeFi tools and innovative blockchain applications."
+ },
+ "statisticsDisplay": {
+ "circulatingSupply": {
+ "title": "CIRCULATING SUPPLY",
+ "desc": "{{perc}} of max supply"
+ },
+ "dfiMinted": {
+ "title": "TOTAL DFI MINTED",
+ "desc": "out of {{value}}{{suffix}} fixed supply"
+ }
+ },
+ "harnessDFISection": {
+ "title": "BUILDING A BETTER TOMORROW WITH DFI",
+ "subtitle": "Harness the power of DFI",
+ "desc": "A gateway to decentralized applications and tools, offering potential for greater returns, lower fees, and democratic governance.",
+ "items": [
+ {
+ "title": "WIDE VARIETY OF DEFI SERVICES",
+ "desc": "With minimal DFI fees, you have access to DeFi Applications"
+ },
+ {
+ "title": "STORE AS COLLATERAL",
+ "desc": "Borrow decentralized assets using crypto tokens as collateral"
+ },
+ {
+ "title": "BE A MASTERNODE OWNER",
+ "desc": "Fund a new staking node for just 20,000 DFI"
+ },
+ {
+ "title": "TOKENIZATION",
+ "desc": "Tokenize assets, manage and trade with dTokens"
+ },
+ {
+ "title": "COMMUNITY FUND GOVERNANCE",
+ "desc": "Participate in shaping the future of the blockchain"
+ },
+ {
+ "title": "EARN FROM LIQUIDITY POOLS",
+ "desc": "Earn rewards by providing liquidity on DEX"
+ }
+ ]
+ },
+ "initialTokenDistributionSection": {
+ "title": "FAIR TOKEN DISTRIBUTIONS AND STAKING REWARDS",
+ "subtitle": "Initial Token Distribution",
+ "desc": "",
+ "button": "Read from Whitepaper",
+ "initialSupply": {
+ "title": "INITIAL SUPPLY",
+ "percentage": "49%",
+ "desc": "Of the 1.2 billion $DFI coins, 49% will be in the initial supply. From the initial supply,",
+ "descAirDrop": "26% are airdropped",
+ "descBurn": "27% burned",
+ "descDestroy": "47% destroyed.",
+ "airDrop": "Airdropped",
+ "burn": "Burned",
+ "destroy": "Destroyed",
+ "airDropPercentage": "26%",
+ "burnPercentage": "27%",
+ "destroyPercentage": "47%"
+ },
+ "masternodes": {
+ "title": "TO MASTERNODES OVER TIME",
+ "percentage": "51%",
+ "desc": "The remaining supply is issued to masternode holders over time."
+ }
+ },
+ "getDfiSection": {
+ "title": "PURCHASE AND RECEIVE DFI TOKENS EASILY",
+ "subtitle": "Get DFI on trusted exchanges",
+ "desc1": "Securely buy DFI on trusted cryptocurrency exchanges and easily store them in your DeFiChain wallet.",
+ "desc2": "Click on our partner links to purchase DFI and receive your tokens by sending them to your wallet address.",
+ "exhangePriceText": "Prices may vary from different sources",
+ "stakingText": "Also available for staking in"
+ },
+ "footerCards": {
+ "wallet": {
+ "title": "EXPLORE DEFICHAIN",
+ "subtitle": "Choose your wallet"
+ },
+ "dapps": {
+ "title": "THE GROWING ECOSYSTEM",
+ "subtitle": "Explore dApps"
+ }
+ }
+}
diff --git a/public/locales/en-US/page-explore-masternodes.json b/public/locales/en-US/page-explore-masternodes.json
new file mode 100644
index 000000000..d07e52298
--- /dev/null
+++ b/public/locales/en-US/page-explore-masternodes.json
@@ -0,0 +1,29 @@
+{
+ "heroBanner": {
+ "title": "LEARN ABOUT MASTERNODES",
+ "subtitle": "DeFiChain Masternodes",
+ "desc": "Secure, incentivized, community-driven nodes powering decentralized blockchain networks."
+ },
+ "footerCards": {
+ "cardTitle": "EXPLORE DEFICHAIN",
+ "cards": [
+ {
+ "title": "Choose your wallet"
+ },
+ {
+ "title": "Get $DFI"
+ }
+ ]
+ },
+ "statisticsDisplay" : {
+ "masternodes": {
+ "title": "MASTERNODES",
+ "desc": "{{value}} locked for 10 years"
+ },
+ "tvl" : {
+ "title": "TOTAL VALUE LOCKED",
+ "desc": "in user engagement network"
+ }
+ }
+}
+
diff --git a/public/locales/en-US/page-explore-wallets.json b/public/locales/en-US/page-explore-wallets.json
new file mode 100644
index 000000000..d9e02f575
--- /dev/null
+++ b/public/locales/en-US/page-explore-wallets.json
@@ -0,0 +1,62 @@
+{
+ "heroBanner": {
+ "title": "CHOOSE A WALLET THAT SUITS YOU",
+ "subtitle": "DeFiChain Wallets",
+ "desc": "Gain access to the DeFi landscape through non-custodial wallets designed for a multitude of requirements."
+ },
+ "footerCards": {
+ "cardTitle": "EXPLORE DEFICHAIN",
+ "cards": [
+ {
+ "title": "Trade with DEX"
+ },
+ {
+ "title": "Get $DFI"
+ }
+ ]
+ },
+ "dailyUseSection": {
+ "title": "Daily access to DeFiChain",
+ "subtitle": "These wallets provide lightweight, easy access to DeFiChain’s suite of features. \u2028Best suited for users who interact with DeFiChain on a near-daily basis, while not compromising on speed and security of funds.",
+ "entries": {
+ "DFC": {
+ "title": "DeFiChain Wallet",
+ "desc": "Lightweight, instant access to Decentralized Finance for Bitcoin, at your fingertips."
+ },
+ "DFX": {
+ "title": "DFX Wallet",
+ "desc": "Buy and sell assets with simple bank transfers, and use to participate in Liquidity Mining and $DFI Staking."
+ },
+ "JLY": {
+ "title": "Jellywallet",
+ "desc": "The ultimate non-custodial browser wallet for the DeFiChain ecosystem, allowing seamless access to the exciting world of DeFi and Web3."
+ }
+ }
+ },
+ "advanceUseSection": {
+ "title": "Advanced usage of DeFiChain",
+ "subtitle": "Advanced wallets that are suited for complex usage of DeFiChain, such as masternode management, multi-signature management, and more.",
+ "entries": {
+ "DFC": {
+ "title": "DeFi Wallet desktop app",
+ "desc": "Transact, liquidity mine, swap and more with the full-featured and fully-decentralized wallet app. Full node included."
+ },
+ "RPI": {
+ "title": "DeFi wallet for Raspberry Pi",
+ "desc": "A version of the desktop wallet for Raspberry Pi 4B 4GB with official Raspberry Pi OS (32-Bit)."
+ },
+ "CLI": {
+ "title": "CLI",
+ "desc": "Transact and interact with DeFiChain through a command line interface. Full node included."
+ },
+ "DFIElectrum": {
+ "title": "DeFiChain Electrum",
+ "desc": "Multi-signature DeFiChain wallet built with Electrum for treasury use cases and more."
+ },
+ "QUANTUM": {
+ "title": "Quantum",
+ "desc": "Quantum is a trusted bridge that facilitates seamless transfers between DeFiChain and Ethereum."
+ }
+ }
+ }
+}
diff --git a/public/locales/en-US/page-index.json b/public/locales/en-US/page-index.json
index 2b0362e46..8fd612193 100644
--- a/public/locales/en-US/page-index.json
+++ b/public/locales/en-US/page-index.json
@@ -4,9 +4,45 @@
"desc": "A blockchain dedicated to fast, intelligent and transparent decentralized financial services, accessible by everyone."
},
"Header": {
- "title": "Native Decentralized Finance for Bitcoin",
+ "title": "Connecting old and new worlds",
"desc": "A blockchain dedicated to fast, intelligent and transparent decentralized financial services, accessible by everyone."
},
+ "StatisticsSection": {
+ "dfiMinted": {
+ "title": "TOTAL DFI MINTED",
+ "desc": "{{perc}} of max supply"
+ },
+ "tvlLocked": {
+ "title": "TOTAL VALUE LOCKED IN USD",
+ "mobileTitle": "TVL IN USD",
+ "desc": "Pool | Masternodes | Vaults"
+ },
+ "masternodes": {
+ "title": "MASTERNODES",
+ "desc": "${{perc}} locked"
+ }
+ },
+ "ReadyForFlexibilitySection": {
+ "label": "READY FOR FLEXIBILITY",
+ "title": "DeFi MetaChain the upgrade",
+ "descParaOne": "DeFi MetaChain is an EVM-compatible blockchain that uses Proof of Authority (POA) and runs in parallel with the Native DeFiChain blockchain.",
+ "descParaTwo": "Read through the documentation to get started with deploying next generation DeFi applications on DeFi MetaChain.",
+ "button": "Explore DeFi MetaChain"
+ },
+ "EcosystemSection": {
+ "label": "JUMPSTART INTO DEFICHAIN ECOSYSTEM",
+ "title": "Constant evolution to build, deliver and outperform",
+ "cards": {
+ "investTitle": "Invest, Trade and Earn with DeFiChain",
+ "investSubtitle": "Learn More",
+ "masternodeTitle": "Own a Masternode",
+ "masternodeSubtitle": "Learn More",
+ "dappsTitle": "dApps for DeFiChain",
+ "dappsSubtitle": "Explore",
+ "quantumTitle": "Connecting blockchains with Quantum",
+ "quantumSubtitle": "Learn More"
+ }
+ },
"CardsSection": {
"cards": [
{
@@ -697,5 +733,31 @@
}
]
}
+ },
+ "BlockchainFeatureSection": {
+ "title": "Designed for Decentralized Finance",
+ "subtitle": "NON-TURING-COMPLETE BLOCKCHAIN",
+ "desc": "DeFiChain offers comprehensive functionality tailored to the needs of the Distributed Ledger Technology (DLT) community, prioritizing simplicity, rapid throughput, and security.",
+ "button": "Start building",
+ "THROUGHPUT": {
+ "title": "THROUGHPUT",
+ "desc": "Unparalleled high transaction throughput for all transactions."
+ },
+ "SECURITY": {
+ "title": "SECURITY",
+ "desc": "Turing-incomplete for reduced attack vectors."
+ },
+ "IMMUTABILITY": {
+ "title": "IMMUTABILITY",
+ "desc": "Marries the best of Proof-of-Stake, with the security of Bitcoin."
+ },
+ "DEVELOPMENT": {
+ "title": "DEVELOPMENT",
+ "desc": "Rapidly create a variety of DeFi apps on one chain."
+ },
+ "VARIETY": {
+ "title": "VARIETY",
+ "desc": "Wide range of crypto-economic financial operations."
+ }
}
}
diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json
index 5f402d447..034ea29fb 100644
--- a/public/locales/fr/common.json
+++ b/public/locales/fr/common.json
@@ -2,5 +2,8 @@
"title": "DeFiChain",
"Punctuation": {
"fullStop": "."
+ },
+ "StartExploring": {
+ "button": "Commencer à explorer"
}
}
diff --git a/public/locales/fr/layout.json b/public/locales/fr/layout.json
index 0d67b0e0c..8fbcdd5e5 100644
--- a/public/locales/fr/layout.json
+++ b/public/locales/fr/layout.json
@@ -9,39 +9,209 @@
"downloads": "Téléchargements",
"learn": "Apprendre",
"buy": "Acheter",
- "dfcblog": "Blog"
+ "dfcblog": "Blog",
+ "explore": "Explorer",
+ "build": "Construire",
+ "community": "Communauté"
+ },
+ "explore": {
+ "title": "Explorer DeFiChain",
+ "labels": [
+ {
+ "title": "$DFI",
+ "subtitle": "En savoir plus sur le token"
+ },
+ {
+ "title": "Échange décentralisé",
+ "subtitle": "Maximisez vos actifs"
+ },
+ {
+ "title": "Portefeuilles",
+ "subtitle": "Stockez vos actifs à votre manière"
+ },
+ {
+ "title": "Masternodes",
+ "subtitle": "Staking de DeFiChain"
+ }
+ ],
+ "image": {
+ "title": "$DFI",
+ "subtitle": "En savoir plus sur le token et où l'obtenir"
+ }
+ },
+ "ecosystem": {
+ "info": [
+ {
+ "title": "PLONGEZ DANS L'ÉCOSYSTÈME",
+ "labels": [
+ {
+ "title": "Applications DeFiChain",
+ "subtitle": "Voyez DeFiChain en action"
+ },
+ {
+ "title": "DeFi Meta Chain",
+ "subtitle": "Élargir les possibilités sur DeFiChain"
+ },
+ {
+ "title": "Gouvernance",
+ "subtitle": "Pour DeFiChain, par DeFiChain"
+ }
+ ]
+ },
+ {
+ "title": "IMPLIQUEZ-VOUS DANS DEFICHAIN",
+ "labels": [
+ {
+ "title": "Bounty de bogues"
+ },
+ {
+ "title": "Programme d'accélérateur de 100 millions de $"
+ }
+ ]
+ }
+ ],
+ "image": {
+ "subtitle": "Propulsé par la sécurité du Bitcoin et la flexibilité d'Ethereum"
+ }
+ },
+ "build": {
+ "title": "COMMENCER À CONSTRUIRE",
+ "labels": [
+ {
+ "title": "Kit de développement logiciel Jellyfish",
+ "subtitle": "Construire pour des applications modernes de DeFi"
+ },
+ {
+ "title": "Livre blanc de DeFiChain",
+ "subtitle": "Fondamentaux de DeFiChain"
+ },
+ {
+ "title": "GitHub",
+ "subtitle": "Suivre les développements récents"
+ },
+ {
+ "title": "Ressources pour les développeurs",
+ "subtitle": "Commencez à construire sur DeFiChain"
+ },
+ {
+ "title": "Ressources média",
+ "subtitle": "Ressources de marque de DeFiChain"
+ },
+ {
+ "title": "Sécurité",
+ "subtitle": "Sans confiance et décentralisé"
+ }
+ ]
+ },
+ "community": {
+ "info": [
+ {
+ "title": "PLONGER DANS L'ÉCOSYSTÈME",
+ "labels": [
+ {
+ "title": "Blog de DeFiChain",
+ "subtitle": "Obtenir les dernières nouvelles"
+ }
+ ]
+ },
+ {
+ "title": "REJOINDRE LES COMMUNAUTÉS",
+ "labels": [
+ {
+ "title": "Reddit"
+ },
+ {
+ "title": "Twitter"
+ },
+ {
+ "title": "Facebook"
+ },
+ {
+ "title": "GitHub"
+ },
+ {
+ "title": "Youtube"
+ },
+ {
+ "title": "LinkedIn"
+ },
+ {
+ "title": "Discord"
+ },
+ {
+ "title": "CoinMarketCap"
+ },
+ {
+ "title": "Telegram (EN)"
+ },
+ {
+ "title": "Telegram (DE)"
+ },
+ {
+ "title": "Telegram (FR)"
+ },
+ {
+ "title": "Telegram (ES)"
+ },
+ {
+ "title": "Telegram (IT)"
+ },
+ {
+ "title": "Telegram (ID)"
+ },
+ {
+ "title": "Telegram (TR)"
+ },
+ {
+ "title": "Telegram (ZH)"
+ },
+ {
+ "title": "Telegram (RU)"
+ },
+ {
+ "title": "Telegram (PT)"
+ }
+ ]
+ }
+ ]
}
},
"footer": {
- "title": "Finance décentralisée native sur Bitcoin",
"sitemap": {
- "foundation": "Fondation",
- "dfi": "$DFI",
- "dex": "DEX",
- "developers": "Développeurs",
- "ecosystem": "Écosystème",
- "downloads": "Downloads",
- "media": "Médias",
- "learn": "Apprendre",
- "security": "Sécurité",
- "bugbounty": "Prime aux bogues",
- "whitepaper": "Livre blanc",
- "dfcblog": "Blog",
- "language": "fr",
- "newsletter": "Newsletter"
+ "EXPLORE": {
+ "category": "EXPLORER",
+ "$DFI": "$DFI",
+ "decentralizedExchange": "Échange décentralisé",
+ "wallets": "Portefeuilles",
+ "masternodes": "Masternodes"
+ },
+ "ECOSYSTEM": {
+ "category": "ECOSYSTÈME",
+ "defichainapps": "Applications DeFiChain",
+ "defimetachain": "DeFi MetaChain",
+ "defiscan": "DeFiScan",
+ "governance": "Gouvernance",
+ "bugbounty": "Bounty de bogues",
+ "100macceleratorprogram": "Programme d'accélérateur de 100 millions de $"
+ },
+ "BUILD": {
+ "category": "CONSTRUIRE",
+ "jellyfishsdk": "Kit de développement logiciel Jellyfish",
+ "defichainwhitepaper": "Livre blanc de DeFiChain",
+ "github": "GitHub",
+ "developerResource": "Ressource pour les développeurs",
+ "mediaAssets": "Ressources média",
+ "security": "Sécurité"
+ },
+ "COMMUNITY": {
+ "category": "COMMUNAUTÉ",
+ "blog": "Blog",
+ "newsletter": "Bulletin d'information"
+ }
},
- "social": {
- "title": "Réseaux sociaux",
- "twitter": "Twitter",
- "youtube": "YouTube",
- "reddit": "Reddit",
- "linkedin": "LinkedIn",
- "facebook": "Facebook",
- "discord": "Discord",
- "github": "GitHub",
- "coinMarketCap": "CoinMarketCap",
- "telegram": "Telegram",
- "merch": "Marchandise"
+ "bottomlink": {
+ "privacy": "Politique de confidentialité",
+ "terms": "Conditions d'utilisation"
}
}
}
diff --git a/public/locales/fr/page-index.json b/public/locales/fr/page-index.json
index 9c65c0836..2529dc251 100644
--- a/public/locales/fr/page-index.json
+++ b/public/locales/fr/page-index.json
@@ -4,9 +4,31 @@
"desc": "Une blockchain dédiée aux services financiers décentralisés rapides, intelligents et transparents, accessibles à tous."
},
"Header": {
- "title": "Finance décentralisée native sur Bitcoin",
+ "title": "Connecter l'ancien et le nouveau monde",
"desc": "Une blockchain dédiée aux services financiers décentralisés rapides, intelligents et transparents, accessibles à tous."
},
+ "StatisticsSection": {
+ "dfiMinted": {
+ "title": "TOTAL DES DFI MINTÉS",
+ "desc": "{{perc}} de l'offre maximale"
+ },
+ "tvlLocked": {
+ "title": "VALEUR TOTALE BLOQUÉE EN USD",
+ "mobileTitle": "TVL EN USD",
+ "desc": "Pool | Masternodes | Vaults"
+ },
+ "masternodes": {
+ "title": "MASTERNODES",
+ "desc": "{{perc}} $ bloqués"
+ }
+ },
+ "ReadyForFlexibilitySection": {
+ "label": "PRÊT POUR LA FLEXIBILITÉ",
+ "title": "DeFi MetaChain : la mise à niveau",
+ "descParaOne": "DeFi MetaChain est une blockchain compatible EVM qui utilise la preuve d'autorité (Proof-of-Authority : POA) et fonctionne en parallèle avec la blockchain native DeFiChain",
+ "descParaTwo": "Consulter la documentation pour commencer à déployer les applications DeFi de nouvelle génération sur DeFi MetaChain.",
+ "button": "Explorer DeFi MetaChain"
+ },
"CardsSection": {
"cards": [
{
@@ -697,5 +719,31 @@
}
]
}
+ },
+ "BlockchainFeatureSection": {
+ "title": "Conçu pour la finance décentralisée",
+ "subtitle": "BLOCKCHAIN NON-TURING-COMPLÈTE",
+ "desc": "DeFiChain offre des fonctionnalités complètes adaptées aux besoins de la communauté DLT (Distributed Ledger Technology), en donnant la priorité à la simplicité, au débit rapide et à la sécurité.",
+ "button": "Commencer à construire",
+ "THROUGHPUT": {
+ "title": "DÉBIT",
+ "desc": "Débit élevé inégalé pour toutes les transactions."
+ },
+ "SECURITY": {
+ "title": "SÉCURITÉ",
+ "desc": "Turing-incomplet pour les vecteurs d'attaque réduits."
+ },
+ "IMMUTABILITY": {
+ "title": "IMMUTABILITÉ",
+ "desc": "Marie le meilleur de la preuve d'enjeu (Proof-of-Stake), avec la sécurité de Bitcoin."
+ },
+ "DEVELOPMENT": {
+ "title": "DÉVELOPPEMENT",
+ "desc": "Créer rapidement une variété d'applications DeFi sur une seule chaîne."
+ },
+ "VARIETY": {
+ "title": "VARIÉTÉ",
+ "desc": "Large gamme d'opérations financières crypto-économiques."
+ }
}
}
diff --git a/public/locales/zh-Hans/common.json b/public/locales/zh-Hans/common.json
index 7533ce8a0..dc324bc08 100644
--- a/public/locales/zh-Hans/common.json
+++ b/public/locales/zh-Hans/common.json
@@ -2,5 +2,8 @@
"title": "比特币生态中的DeFi",
"Punctuation": {
"fullStop": "。"
+ },
+ "StartExploring": {
+ "button": "开始探索"
}
}
diff --git a/public/locales/zh-Hans/layout.json b/public/locales/zh-Hans/layout.json
index 9de574d20..15e04e832 100644
--- a/public/locales/zh-Hans/layout.json
+++ b/public/locales/zh-Hans/layout.json
@@ -5,43 +5,213 @@
"dfi": "$DFI",
"dex": "DEX",
"developers": "开发者",
- "ecosystem": "生态系统",
+ "ecosystem": "生态圈",
"downloads": "下载区",
"learn": "学习中心",
"buy": "购买",
- "dfcblog": "博客"
+ "dfcblog": "博客",
+ "explore": "探索",
+ "build": "建造",
+ "community": "社区"
+ },
+ "explore": {
+ "title": "探索 DeFiChain",
+ "labels": [
+ {
+ "title": "$DFI",
+ "subtitle": "了解代币(Token)"
+ },
+ {
+ "title": "去中心化交易所",
+ "subtitle": "最大化你的资产"
+ },
+ {
+ "title": "钱包",
+ "subtitle": "以自己的方式存储资产"
+ },
+ {
+ "title": "主节点",
+ "subtitle": "将您的部分投入 DeFiChain"
+ }
+ ],
+ "image": {
+ "title": "$DFI",
+ "subtitle": "了解代币以及如何获取"
+ }
+ },
+ "ecosystem": {
+ "info": [
+ {
+ "title": "进入生态圈",
+ "labels": [
+ {
+ "title": "DeFiChain 应用",
+ "subtitle": "查看 DeFiChain 目前的进展"
+ },
+ {
+ "title": "DeFi元链",
+ "subtitle": "扩展 DeFiChain 的可能性"
+ },
+ {
+ "title": "治理",
+ "subtitle": "由 DeFiChain,为DeFiChain"
+ }
+ ]
+ },
+ {
+ "title": "参与并加入 DEFICHAIN",
+ "labels": [
+ {
+ "title": "漏洞奖励"
+ },
+ {
+ "title": "1 亿美元的加速器计划"
+ }
+ ]
+ }
+ ],
+ "image": {
+ "subtitle": "来自比特币的安全性和以太坊的灵活性保驾护航"
+ }
+ },
+ "build": {
+ "title": "建造起点",
+ "labels": [
+ {
+ "title": "Jellyfish SDK",
+ "subtitle": "为现代 DeFi 应用进行构建"
+ },
+ {
+ "title": "DeFiChain 白皮书",
+ "subtitle": "DeFiChain 的基础"
+ },
+ {
+ "title": "GitHub",
+ "subtitle": "跟进最新的进展"
+ },
+ {
+ "title": "开发人员资源",
+ "subtitle": "开始在 DeFiChain 上构建"
+ },
+ {
+ "title": "媒体资源",
+ "subtitle": "DeFiChain品牌资源"
+ },
+ {
+ "title": "安全性",
+ "subtitle": "去信任和去中心化"
+ }
+ ]
+ },
+ "community": {
+ "info": [
+ {
+ "title": "进入生态圈",
+ "labels": [
+ {
+ "title": "DeFiChain 部落格",
+ "subtitle": "获取最新消息"
+ }
+ ]
+ },
+ {
+ "title": "加入大家庭",
+ "labels": [
+ {
+ "title": "Reddit"
+ },
+ {
+ "title": "Twitter"
+ },
+ {
+ "title": "Facebook"
+ },
+ {
+ "title": "GitHub"
+ },
+ {
+ "title": "Youtube"
+ },
+ {
+ "title": "LinkedIn"
+ },
+ {
+ "title": "Discord"
+ },
+ {
+ "title": "CoinMarketCap"
+ },
+ {
+ "title": "Telegram (EN)"
+ },
+ {
+ "title": "Telegram (DE)"
+ },
+ {
+ "title": "Telegram (FR)"
+ },
+ {
+ "title": "Telegram (ES)"
+ },
+ {
+ "title": "Telegram (IT)"
+ },
+ {
+ "title": "Telegram (ID)"
+ },
+ {
+ "title": "Telegram (TR)"
+ },
+ {
+ "title": "Telegram (ZH)"
+ },
+ {
+ "title": "Telegram (RU)"
+ },
+ {
+ "title": "Telegram (PT)"
+ }
+ ]
+ }
+ ]
}
},
"footer": {
- "title": "比特币生态中的开放式金融",
"sitemap": {
- "foundation": "递飞链基金会",
- "dfi": "$DFI",
- "dex": "DEX",
- "developers": "开发者",
- "ecosystem": "生态系统",
- "downloads": "下载区",
- "media": "媒体素材",
- "learn": "学习中心",
- "security": "安全性",
- "bugbounty": "漏洞悬赏",
- "whitepaper": "白皮书",
- "dfcblog": "博客",
- "language": "zh",
- "newsletter": "Newsletter"
+ "EXPLORE": {
+ "category": "探索",
+ "$DFI": "$DFI",
+ "decentralizedExchange": "去中心化交易所",
+ "wallets": "钱包",
+ "masternodes": "主节点"
+ },
+ "ECOSYSTEM": {
+ "category": "生态圈",
+ "defichainapps": "DeFiChain 应用",
+ "defimetachain": "DeFi元链",
+ "defiscan": "DeFiScan",
+ "governance": "治理",
+ "bugbounty": "漏洞奖励",
+ "100macceleratorprogram": "1 亿美元的加速器计划"
+ },
+ "BUILD": {
+ "category": "建造",
+ "jellyfishsdk": "Jellyfish SDK",
+ "defichainwhitepaper": "DeFiChain 白皮书",
+ "github": "GitHub",
+ "developerResource": "开发者资源",
+ "mediaAssets": "媒体资源",
+ "security": "安全性"
+ },
+ "COMMUNITY": {
+ "category": "社区",
+ "blog": "部落格",
+ "newsletter": "通讯"
+ }
},
- "social": {
- "title": "社区",
- "twitter": "推特",
- "youtube": "YouTube",
- "reddit": "Reddit",
- "linkedin": "領英",
- "facebook": "脸书",
- "discord": "Discord",
- "github": "GitHub",
- "coinMarketCap": "CoinMarketCap",
- "telegram": "电报群",
- "merch": "商品"
+ "bottomlink": {
+ "privacy": "隐私政策",
+ "terms": "使用条款"
}
}
}
diff --git a/public/locales/zh-Hans/page-index.json b/public/locales/zh-Hans/page-index.json
index 4089742a7..182613f5f 100644
--- a/public/locales/zh-Hans/page-index.json
+++ b/public/locales/zh-Hans/page-index.json
@@ -4,8 +4,30 @@
"desc": "全民都能使用快速,智能与透明去中心化的金融区块链"
},
"Header": {
- "title": "比特币生态中的DeFi",
- "desc": "递飞链:原生区块链专为全民堤共快速,智能和透明化的DeFi金融服务"
+ "title": "旧世界与新世界之间的桥梁",
+ "desc": "每个人都可以访问,一个致力于快速、智能和透明的去中心化金融服务区块链"
+ },
+ "StatisticsSection": {
+ "dfiMinted": {
+ "title": "DFI 铸造总量",
+ "desc": "最大供应量的{{perc}}"
+ },
+ "tvlLocked": {
+ "title": "以美元计价的总价值",
+ "mobileTitle": "以美元计价的总价值",
+ "desc": "池 | 主节点 | 资金库"
+ },
+ "masternodes": {
+ "title": "主节点",
+ "desc": "已锁定 ${{perc}}"
+ }
+ },
+ "ReadyForFlexibilitySection": {
+ "label": "为灵活性做好准备",
+ "title": "DeFi MetaChain 升级",
+ "descParaOne": "DeFi MetaChain (DeFi 元链)是一个兼容 EVM 的区块链,它使用权威证明(Proof of Authority,POA)并与原生 DeFiChain 区块链并列运行。",
+ "descParaTwo": "通读文档以开始在 DeFi MetaChain 上部署下一代 DeFi 应用程序。",
+ "button": "探索 DeFi MetaChain"
},
"CardsSection": {
"cards": [
@@ -697,5 +719,31 @@
}
]
}
+ },
+ "BlockchainFeatureSection": {
+ "title": "专为去中心化金融设计",
+ "subtitle": "非图灵完备区块链",
+ "desc": "DeFiChain 优先考虑简单性、快速吞吐量和安全性的情况下提供全面的功能,以满足分布式账本技术 (Distributed Ledger Technology,简称DLT) 社区的需求。",
+ "button": "开始建造",
+ "THROUGHPUT": {
+ "title": "吞吐量",
+ "desc": "所有交易拥有极快的交易吞吐量。"
+ },
+ "SECURITY": {
+ "title": "安全",
+ "desc": "非图灵完备可减少攻击角度。"
+ },
+ "IMMUTABILITY": {
+ "title": "不可变性",
+ "desc": "比特币的安全性完美结合起来的股权证明设计"
+ },
+ "DEVELOPMENT": {
+ "title": "发展",
+ "desc": "在一条链上快速创建各种 DeFi 应用程序。"
+ },
+ "VARIETY": {
+ "title": "品类",
+ "desc": "提供广泛的加密经济金融业务"
+ }
}
}
diff --git a/public/locales/zh-Hant/common.json b/public/locales/zh-Hant/common.json
index 2d7bfa4e4..3b7dbc89d 100644
--- a/public/locales/zh-Hant/common.json
+++ b/public/locales/zh-Hant/common.json
@@ -2,5 +2,8 @@
"title": "比特幣生態中的DeFi",
"Punctuation": {
"fullStop": "。"
+ },
+ "StartExploring": {
+ "button": "開始探索"
}
}
diff --git a/public/locales/zh-Hant/layout.json b/public/locales/zh-Hant/layout.json
index 52c146d3c..041151cde 100644
--- a/public/locales/zh-Hant/layout.json
+++ b/public/locales/zh-Hant/layout.json
@@ -5,43 +5,213 @@
"dfi": "$DFI",
"dex": "DEX",
"developers": "開發者",
- "ecosystem": "生態系統",
+ "ecosystem": "生態圈",
"downloads": "下載區",
"learn": "學習中心",
"buy": "購買",
- "dfcblog": "博客"
+ "dfcblog": "博客",
+ "explore": "探索",
+ "build": "建造",
+ "community": "社區"
+ },
+ "explore": {
+ "title": "探索 DeFiChain",
+ "labels": [
+ {
+ "title": "$DFI",
+ "subtitle": "了解代幣(Token)"
+ },
+ {
+ "title": "去中心化交易所",
+ "subtitle": "最大化你的資產"
+ },
+ {
+ "title": "錢包",
+ "subtitle": "以自己的方式存儲資產"
+ },
+ {
+ "title": "主節點",
+ "subtitle": "將您的部分投入 DeFiChain"
+ }
+ ],
+ "image": {
+ "title": "$DFI",
+ "subtitle": "了解代幣以及如何獲取"
+ }
+ },
+ "ecosystem": {
+ "info": [
+ {
+ "title": "進入生態圈",
+ "labels": [
+ {
+ "title": "DeFiChain 應用",
+ "subtitle": "查看 DeFiChain 目前的進展"
+ },
+ {
+ "title": "DeFi元鏈",
+ "subtitle": "擴展 DeFiChain 的可能性"
+ },
+ {
+ "title": "治理",
+ "subtitle": "由 DeFiChain,為DeFiChain"
+ }
+ ]
+ },
+ {
+ "title": "參與並加入 DEFICHAIN",
+ "labels": [
+ {
+ "title": "漏洞獎勵"
+ },
+ {
+ "title": "1 億美元的加速器計劃"
+ }
+ ]
+ }
+ ],
+ "image": {
+ "subtitle": "來自比特幣的安全性和以太坊的靈活性保駕護航"
+ }
+ },
+ "build": {
+ "title": "建造起點",
+ "labels": [
+ {
+ "title": "Jellyfish SDK",
+ "subtitle": "為現代 DeFi 應用進行構建"
+ },
+ {
+ "title": "DeFiChain 白皮書",
+ "subtitle": "DeFiChain 的基礎"
+ },
+ {
+ "title": "GitHub",
+ "subtitle": "跟進最新的進展"
+ },
+ {
+ "title": "開發人員資源",
+ "subtitle": "開始在 DeFiChain 上構建"
+ },
+ {
+ "title": "媒體資源",
+ "subtitle": "DeFiChain品牌資源"
+ },
+ {
+ "title": "安全性",
+ "subtitle": "去信任和去中心化"
+ }
+ ]
+ },
+ "community": {
+ "info": [
+ {
+ "title": "進入生態圈",
+ "labels": [
+ {
+ "title": "DeFiChain 部落格",
+ "subtitle": "獲取最新消息"
+ }
+ ]
+ },
+ {
+ "title": "加入大家庭",
+ "labels": [
+ {
+ "title": "Reddit"
+ },
+ {
+ "title": "Twitter"
+ },
+ {
+ "title": "Facebook"
+ },
+ {
+ "title": "GitHub"
+ },
+ {
+ "title": "Youtube"
+ },
+ {
+ "title": "LinkedIn"
+ },
+ {
+ "title": "Discord"
+ },
+ {
+ "title": "CoinMarketCap"
+ },
+ {
+ "title": "Telegram (EN)"
+ },
+ {
+ "title": "Telegram (DE)"
+ },
+ {
+ "title": "Telegram (FR)"
+ },
+ {
+ "title": "Telegram (ES)"
+ },
+ {
+ "title": "Telegram (IT)"
+ },
+ {
+ "title": "Telegram (ID)"
+ },
+ {
+ "title": "Telegram (TR)"
+ },
+ {
+ "title": "Telegram (ZH)"
+ },
+ {
+ "title": "Telegram (RU)"
+ },
+ {
+ "title": "Telegram (PT)"
+ }
+ ]
+ }
+ ]
}
},
"footer": {
- "title": "比特幣生態中的開放式金融",
"sitemap": {
- "foundation": "遞飛鏈基金會",
- "dfi": "$DFI",
- "dex": "DEX",
- "developers": "開發者",
- "ecosystem": "生態系統",
- "downloads": "下載區",
- "media": "媒體素材",
- "learn": "學習中心",
- "security": "安全性",
- "bugbounty": "漏洞懸賞",
- "whitepaper": "白皮書",
- "dfcblog": "博客",
- "language": "zh-tw",
- "newsletter": "Newsletter"
+ "EXPLORE": {
+ "category": "探索",
+ "$DFI": "$DFI",
+ "decentralizedExchange": "去中心化交易所",
+ "wallets": "錢包",
+ "masternodes": "主節點"
+ },
+ "ECOSYSTEM": {
+ "category": "生態圈",
+ "defichainapps": "DeFiChain 應用",
+ "defimetachain": "DeFi元鏈",
+ "defiscan": "DeFiScan",
+ "governance": "治理",
+ "bugbounty": "漏洞獎勵",
+ "100macceleratorprogram": "1 億美元的加速器計劃"
+ },
+ "BUILD": {
+ "category": "建造",
+ "jellyfishsdk": "Jellyfish SDK",
+ "defichainwhitepaper": "DeFiChain 白皮書",
+ "github": "GitHub",
+ "developerResource": "開發者資源",
+ "mediaAssets": "媒體資源",
+ "security": "安全性"
+ },
+ "COMMUNITY": {
+ "category": "社區",
+ "blog": "部落格",
+ "newsletter": "通訊"
+ }
},
- "social": {
- "title": "社區",
- "twitter": "推特",
- "youtube": "YouTube",
- "reddit": "Reddit",
- "linkedin": "領英",
- "facebook": "臉書",
- "discord": "Discord",
- "github": "GitHub",
- "coinMarketCap": "CoinMarketCap",
- "telegram": "電報群",
- "merch": "商品"
+ "bottomlink": {
+ "privacy": "隱私政策",
+ "terms": "使用條款"
}
}
}
diff --git a/public/locales/zh-Hant/page-index.json b/public/locales/zh-Hant/page-index.json
index 624b7e454..444171c30 100644
--- a/public/locales/zh-Hant/page-index.json
+++ b/public/locales/zh-Hant/page-index.json
@@ -4,8 +4,30 @@
"desc": "全民都能使用快速,智能與透明去中心化的金融區塊鏈"
},
"Header": {
- "title": "比特幣生態中的DeFi",
- "desc": "遞飛鏈:原生區塊鏈專為全民堤共快速,智能和透明化的DeFi金融服務"
+ "title": "舊世界與新世界之間的橋樑",
+ "desc": "每個人都可以訪問,一個致力於快速、智能和透明的去中心化金融服務區塊鏈"
+ },
+ "StatisticsSection": {
+ "dfiMinted": {
+ "title": "DFI 鑄造總量",
+ "desc": "最大供應量的{{perc}}"
+ },
+ "tvlLocked": {
+ "title": "以美元計價的總價值",
+ "mobileTitle": "以美元計價的總價值",
+ "desc": "池 | 主節點 | 資金庫"
+ },
+ "masternodes": {
+ "title": "主節點",
+ "desc": "已鎖定 ${{perc}}"
+ }
+ },
+ "ReadyForFlexibilitySection": {
+ "label": "為靈活性做好準備",
+ "title": "DeFi MetaChain 升级",
+ "descParaOne": "DeFi MetaChain (DeFi 元链)是一个兼容 EVM 的区块链,它使用权威证明(Proof of Authority,POA)并与原生 DeFiChain 区块链并列运行。",
+ "descParaTwo": "通读文档以开始在 DeFi MetaChain 上部署下一代 DeFi 应用程序。",
+ "button": "探索 DeFi MetaChain"
},
"CardsSection": {
"cards": [
@@ -697,5 +719,31 @@
}
]
}
+ },
+ "BlockchainFeatureSection": {
+ "title": "專為去中心化金融設計",
+ "subtitle": "非圖靈完備區塊鏈",
+ "desc": "DeFiChain 優先考慮簡單性、快速吞吐量和安全性的情況下提供全面的功能,以滿足分佈式賬本技術 (Distributed Ledger Technology,簡稱DLT) 社區的需求。",
+ "button": "開始建造",
+ "THROUGHPUT": {
+ "title": "吞吐量",
+ "desc": "所有交易擁有極快的交易吞吐量。"
+ },
+ "SECURITY": {
+ "title": "安全",
+ "desc": "非圖靈完備可減少攻擊角度。"
+ },
+ "IMMUTABILITY": {
+ "title": "不可變性",
+ "desc": "比特幣的安全性完美結合起來的股權證明設計"
+ },
+ "DEVELOPMENT": {
+ "title": "發展",
+ "desc": "在一條鏈上快速創建各種 DeFi 應用程序。"
+ },
+ "VARIETY": {
+ "title": "品類",
+ "desc": "提供廣泛的加密經濟金融業務"
+ }
}
}
diff --git a/src/components/commons/Buttons.tsx b/src/components/commons/Buttons.tsx
index 178f2a8d8..2c13b9086 100644
--- a/src/components/commons/Buttons.tsx
+++ b/src/components/commons/Buttons.tsx
@@ -1,24 +1,194 @@
-import { PropsWithChildren } from "react";
+import { PropsWithChildren, useState } from "react";
import classNames from "classnames";
+import { IoMdArrowRoundForward } from "react-icons/io";
-/**
- * Container implementation that is part of the design language.
- */
-export function Button(
- props: PropsWithChildren<{ className?: string; text: string }>
-): JSX.Element {
+export function Button({
+ text,
+ className,
+ disabled,
+ href,
+ onClick,
+}: {
+ text: string;
+ className?: string;
+ disabled?: boolean;
+ href?: string;
+ onClick?: () => void;
+}) {
+ if (href) {
+ return (
+
+
+
+ );
+ }
+ return (
+
+ );
+}
+
+function ButtonElement({
+ text,
+ className,
+ disabled,
+ onClick,
+}: {
+ text: string;
+ className?: string;
+ disabled?: boolean;
+ onClick?: () => void;
+}) {
return (
);
}
+export function GradientButton({
+ buttonText,
+ className,
+ borderClassName,
+ disabled,
+ onClick,
+ href,
+}: {
+ buttonText: string;
+ className?: string;
+ borderClassName?: string;
+ disabled?: boolean;
+ onClick?: () => void;
+ href?: string;
+}) {
+ if (href) {
+ return (
+
+
+
+ );
+ }
+ return (
+
+ );
+}
+
+function GradientButtonElement({
+ buttonText,
+ className,
+ disabled,
+ onClick,
+ borderClassName,
+}: {
+ buttonText: string;
+ className?: string;
+ disabled?: boolean;
+ onClick?: () => void;
+ borderClassName?: string;
+}) {
+ return (
+
+ );
+}
+
+export function LinkButton({
+ buttonText,
+ className,
+ disabled,
+ href,
+ horizontalArrow,
+ diagonalArrow,
+}: {
+ buttonText: string;
+ className?: string;
+ disabled?: boolean;
+ href: string;
+ horizontalArrow?: boolean;
+ diagonalArrow?: boolean;
+}) {
+ const [isMouseEnter, setIsMouseEnter] = useState(false);
+ return (
+ setIsMouseEnter(true)}
+ onMouseLeave={() => setIsMouseEnter(false)}
+ href={href}
+ className={classNames(
+ "hover:text-brand-100 flex flex-row gap-x-2 items-center",
+ className ?? "text-lg text-dark-1000 font-semibold",
+ {
+ "pointer-events-none opacity-30": disabled,
+ }
+ )}
+ >
+ {buttonText}
+ {(horizontalArrow || diagonalArrow) && isMouseEnter && (
+
+ )}
+
+ );
+}
+
+// To remove currently not removed yet to load homescreen without error
export function ButtonUnfilled(
props: PropsWithChildren<{ className?: string; text: string }>
): JSX.Element {
diff --git a/src/components/commons/Container.tsx b/src/components/commons/Container.tsx
index 318c233cb..4e29e6fad 100644
--- a/src/components/commons/Container.tsx
+++ b/src/components/commons/Container.tsx
@@ -11,7 +11,7 @@ export function Container(
diff --git a/src/components/commons/HeroBanner.tsx b/src/components/commons/HeroBanner.tsx
new file mode 100644
index 000000000..ef6da8f23
--- /dev/null
+++ b/src/components/commons/HeroBanner.tsx
@@ -0,0 +1,105 @@
+import { Container } from "@components/commons/Container";
+import classNames from "classnames";
+import { SectionTitle } from "@components/commons/SectionTitle";
+import { Button } from "@components/commons/Buttons";
+import { StartExploringButton } from "@components/commons/StartExploringButton";
+
+// The HeroBanner component takes in title, subtitle, desc and HeroBannerBG
+// currently only COIN_ARROW, DFI_COIN, DIAMOND_COIN and CUBE image are available
+// it also takes in optional params on the customBgPosStyle
+// if cta button is required, to pass in hasCtaButton, ctaButtonText and ctaButtonLink
+// if start exploring button is required, to pass in hasStartExploringButton and startExploringJumpLink
+export function HeroBanner({
+ title,
+ subtitle,
+ desc,
+ customBgPosStyle,
+ heroBg,
+ hasCtaButton = false,
+ ctaButtonLink,
+ ctaButtonText,
+ hasStartExploringButton = false,
+ startExploringJumpLink,
+}: {
+ title: string;
+ subtitle: string;
+ desc: string;
+ customBgPosStyle?: string;
+ heroBg: HeroBannerBg;
+ hasCtaButton?: boolean;
+ ctaButtonLink?: string;
+ ctaButtonText?: string;
+ hasStartExploringButton?: boolean;
+ startExploringJumpLink?: string;
+}) {
+ return (
+
+
+
+
+
+ {subtitle}
+
+
+ {desc}
+
+ {hasCtaButton && ctaButtonText && (
+
+ )}
+
+ {hasStartExploringButton && startExploringJumpLink && (
+
+ )}
+
+
+
+ );
+}
+
+export enum HeroBannerBg {
+ COIN_ARROW,
+ CUBE,
+ DFI_COIN,
+ DIAMOND_COIN,
+}
+const bgMapping = {
+ [HeroBannerBg.COIN_ARROW]:
+ "bg-[url(/assets/img/herobanner/hero-banner-coin-arrow.png)]",
+ [HeroBannerBg.CUBE]: "bg-[url(/assets/img/herobanner/hero-banner-cube.png)]",
+ [HeroBannerBg.DFI_COIN]:
+ "bg-[url(/assets/img/herobanner/hero-banner-dfi-coin.png)]",
+ [HeroBannerBg.DIAMOND_COIN]:
+ "bg-[url(/assets/img/herobanner/hero-banner-diamond-coin.png)]",
+};
diff --git a/src/components/commons/SectionTitle.tsx b/src/components/commons/SectionTitle.tsx
new file mode 100644
index 000000000..2bb71325d
--- /dev/null
+++ b/src/components/commons/SectionTitle.tsx
@@ -0,0 +1,21 @@
+import classNames from "classnames";
+
+export function SectionTitle({
+ text,
+ customStyle,
+}: {
+ text: string;
+ customStyle?: string;
+}) {
+ return (
+
+ {text}
+
+ );
+}
diff --git a/src/components/commons/StartExploringButton.tsx b/src/components/commons/StartExploringButton.tsx
new file mode 100644
index 000000000..39ba80f14
--- /dev/null
+++ b/src/components/commons/StartExploringButton.tsx
@@ -0,0 +1,28 @@
+import { IoChevronDown } from "react-icons/io5";
+import classNames from "classnames";
+import { useTranslation } from "next-i18next";
+
+export function StartExploringButton({
+ startExploringJumpLink,
+}: {
+ startExploringJumpLink: string;
+}) {
+ const { t } = useTranslation("common");
+
+ return (
+
+
+
+ );
+}
diff --git a/src/components/commons/StatisticPanel.tsx b/src/components/commons/StatisticPanel.tsx
new file mode 100644
index 000000000..a82945b08
--- /dev/null
+++ b/src/components/commons/StatisticPanel.tsx
@@ -0,0 +1,137 @@
+import { useUnitSuffix } from "@hooks/useUnitSuffix";
+import CountUp from "react-countup";
+import classNames from "classnames";
+
+interface StatisticPanelItemProps {
+ title: string;
+ stats?: number;
+ desc?: string;
+ prefix?: string;
+ descStyle?: string;
+ displayId?: string;
+ displayStripCustomStyle?: string;
+}
+
+export function StatisticPanel({
+ displayId,
+ displayStripCustomStyle,
+ displayItem,
+}: {
+ displayItem: StatisticPanelItemProps[];
+ displayId?: string;
+ displayStripCustomStyle?: string;
+}) {
+ const isHorizontalInTablet = displayItem.length <= 2;
+
+ return (
+
+
+
+ {displayItem.map((item, key) => (
+
+ ))}
+
+
+
+ );
+}
+
+function StatisticsPanelItem({
+ title,
+ stats,
+ desc,
+ prefix,
+ descStyle,
+ isTabletHorizontal = false,
+}: {
+ title: string;
+ stats?: number;
+ desc?: string;
+ prefix?: string;
+ descStyle?: string;
+ isTabletHorizontal?: boolean;
+}) {
+ const { suffix, value } = useUnitSuffix(
+ stats === undefined ? "N/A" : stats.toString()
+ );
+
+ return (
+
+
+ {title}
+
+
+
+ {stats ? (
+ <>
+ {prefix ?? ""}
+ {
+ reset();
+ start();
+ }}
+ end={Number(value)}
+ enableScrollSpy
+ duration={0.5}
+ />
+ {suffix !== "" ? `${suffix}+` : `+`}
+ >
+ ) : (
+ <>N/A>
+ )}
+
+
+ {desc !== undefined && (
+
+ {desc}
+
+ )}
+
+
+ );
+}
diff --git a/src/components/commons/Video.tsx b/src/components/commons/Video.tsx
new file mode 100644
index 000000000..078a5c97d
--- /dev/null
+++ b/src/components/commons/Video.tsx
@@ -0,0 +1,17 @@
+interface VideoProps {
+ src: string;
+ poster?: string;
+ width?: number;
+ height?: number;
+ id?: string;
+ loop?: boolean;
+}
+
+export function Video(props: VideoProps): JSX.Element {
+ const { src, width, height, poster, id, loop } = props;
+ return (
+
+ );
+}
diff --git a/src/components/icons/DeFiChainLogo.tsx b/src/components/icons/DeFiChainLogo.tsx
index 7809c794a..3a9646568 100644
--- a/src/components/icons/DeFiChainLogo.tsx
+++ b/src/components/icons/DeFiChainLogo.tsx
@@ -1,23 +1,26 @@
import { SVGProps } from "react";
-export function DeFiChainLogo(props: SVGProps
): JSX.Element {
+export default function DeFiChainLogo(
+ props: SVGProps
+): JSX.Element {
return (
-