diff --git a/.vscode/settings.json b/.vscode/settings.json index 591f36ec..11a1fb0b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -9,7 +9,7 @@ "editor.defaultFormatter": "biomejs.biome" }, "editor.codeActionsOnSave": { - "quickfix.biome": "explicit" + "quickfix.biome": true }, "editor.formatOnSave": true, "editor.formatOnPaste": true, diff --git a/site/src/components/common/Footer/Footer.tsx b/site/src/components/common/Footer/Footer.tsx index 2f5f0ed0..0cec5b62 100644 --- a/site/src/components/common/Footer/Footer.tsx +++ b/site/src/components/common/Footer/Footer.tsx @@ -59,19 +59,6 @@ function Footer({ className }: InferProps) {
- {stub.corporate.map((el) => ( -
-
{el.title}
-
- {el.icons.map((item) => ( - - ))} -
-
- ))} -
- - {/*
{stub.address.title}
{stub.address.places.map((el) => ( @@ -80,7 +67,7 @@ function Footer({ className }: InferProps) {
))}
- */} +
diff --git a/site/src/components/common/Footer/stub.ts b/site/src/components/common/Footer/stub.ts index e1742fec..ea78bde8 100644 --- a/site/src/components/common/Footer/stub.ts +++ b/site/src/components/common/Footer/stub.ts @@ -2,20 +2,20 @@ import { socialLinks } from 'constants/socials' export const stub = { list: [ - // { - // title: 'Products', - // links: [ - // { name: '=nil;', link: '/' }, - // { name: 'Proof Market ', link: '/proof-market' }, - // { name: 'zkLLVM Compiler', link: '/zkLLVM' }, - // ], - // }, + { + title: 'Products', + links: [ + { name: '=nil;', link: '/' }, + { name: 'Proof Market ', link: '/proof-market' }, + { name: 'zkLLVM Compiler', link: '/zkLLVM' }, + ], + }, { title: 'Navigation', links: [ { name: 'Blog', link: '/blog' }, { name: 'Careers', link: '/careers' }, - // { name: 'Research', link: '/research' }, + { name: 'Research', link: '/research' }, { name: 'Documentation', link: 'https://docs.nil.foundation/', @@ -36,19 +36,6 @@ export const stub = { { icon: 'dev-portal', link: socialLinks.devPortal }, ], }, - // { - // title: 'Corporate', - // icons: [ - // { - // icon: 'linkedin', - // link: socialLinks.linkedin, - // }, - // { icon: 'twitter', link: socialLinks.twitter }, - // ], - // }, - ], - - corporate: [ { title: 'Corporate', icons: [ diff --git a/site/src/components/common/Header/Header.tsx b/site/src/components/common/Header/Header.tsx index 3cda85bc..5848aad0 100644 --- a/site/src/components/common/Header/Header.tsx +++ b/site/src/components/common/Header/Header.tsx @@ -59,7 +59,7 @@ function Header({ className, config }: HeaderProps) {
- {/* {realLinks.main.map((el) => ( + {realLinks.main.map((el) => ( - ))} */} + ))}
{realLinks.other.map((el) => ( diff --git a/site/src/components/common/Header/stub.ts b/site/src/components/common/Header/stub.ts index cb6de5ef..b569279c 100644 --- a/site/src/components/common/Header/stub.ts +++ b/site/src/components/common/Header/stub.ts @@ -1,8 +1,8 @@ export const links = { main: [ { name: '=nil;', link: '/' }, - // { name: 'Proof Market ', link: '/proof-market' }, - // { name: 'zkLLVM Compiler', link: '/zkLLVM' }, + { name: 'Proof Market ', link: '/proof-market' }, + { name: 'zkLLVM Compiler', link: '/zkLLVM' }, ], other: [ { name: 'Blog', link: '/blog' }, @@ -10,7 +10,7 @@ export const links = { name: 'Documentation', link: 'https://docs.nil.foundation/', }, - // { name: 'Research', link: '/research' }, + { name: 'Research', link: '/research' }, { name: 'About', link: '/about' }, { name: 'Careers', link: '/careers' }, ], diff --git a/site/src/components/common/HeadingSection/HeadingSection.tsx b/site/src/components/common/HeadingSection/HeadingSection.tsx index 97450810..550edc74 100644 --- a/site/src/components/common/HeadingSection/HeadingSection.tsx +++ b/site/src/components/common/HeadingSection/HeadingSection.tsx @@ -15,7 +15,6 @@ function HeadingSection({ title, description, socials, - offset, }: InferProps) { const getIcons = useMemo( () => @@ -29,7 +28,6 @@ function HeadingSection({

{title}

{description &&

{description}

} - {offset &&
} {socials &&
{getIcons}
}
) @@ -42,7 +40,6 @@ HeadingSection.propTypes = { title: string.isRequired, description: string, socials: oneOf(['community', 'corporate']), - offset: string, } export default HeadingSection diff --git a/site/src/components/common/Icon/icons/DevPortal.tsx b/site/src/components/common/Icon/icons/DevPortal.tsx index 5fbf22e2..d4fe39de 100644 --- a/site/src/components/common/Icon/icons/DevPortal.tsx +++ b/site/src/components/common/Icon/icons/DevPortal.tsx @@ -1,16 +1,12 @@ import { memo } from 'react' import { SvgIconComponent } from '../SvgIconComponent' -import { PRIMITIVE_COLORS } from '@nilfoundation/ui-kit' const DevPortal: SvgIconComponent = ({ className }) => ( - - - - - - - - + + ) diff --git a/site/src/components/common/JoinSection/JoinSection.module.scss b/site/src/components/common/JoinSection/JoinSection.module.scss index 3f31cf3e..03fd7f40 100644 --- a/site/src/components/common/JoinSection/JoinSection.module.scss +++ b/site/src/components/common/JoinSection/JoinSection.module.scss @@ -139,8 +139,3 @@ margin-top: size(3); } } - -.devnet { - padding-left: 0.5ch; - @include paragraph; -} diff --git a/site/src/components/common/JoinSection/JoinSection.tsx b/site/src/components/common/JoinSection/JoinSection.tsx index 758e753c..7526561b 100644 --- a/site/src/components/common/JoinSection/JoinSection.tsx +++ b/site/src/components/common/JoinSection/JoinSection.tsx @@ -5,13 +5,8 @@ import classNames from 'classnames' import PropTypes, { InferProps } from 'prop-types' import s from './JoinSection.module.scss' import { Column } from 'components/Column' -import { useViewport } from 'hooks/useViewport' -import { WebButton } from 'components/WebButton' -import { seo } from 'constants/seo' function JoinSection({ title, leftText, rightText, social, className }: InferProps) { - const { isMobile } = useViewport() - return (
@@ -21,19 +16,12 @@ function JoinSection({ title, leftText, rightText, social, className }: InferPro
-

- {leftText} - - Join our devnet - -

- {!isMobile &&
} +

{leftText}

- {/*

{rightText}

*/} -
+

{rightText}

{/* */}
diff --git a/site/src/components/pages/About/Hero/Hero.module.scss b/site/src/components/pages/About/Hero/Hero.module.scss index 84b907be..114ef855 100644 --- a/site/src/components/pages/About/Hero/Hero.module.scss +++ b/site/src/components/pages/About/Hero/Hero.module.scss @@ -25,7 +25,7 @@ p { margin-top: size($spacing24 * 2 + $spacing48 + 5); - width: size(300); + width: size(158); } } } @@ -46,7 +46,7 @@ .heroDescription p { @include paragraph; - max-width: size(494); + max-width: size(247); background-color: $gray900; } @@ -57,7 +57,7 @@ } .line { - width: 100%; + width: 50%; } .info { @@ -117,7 +117,7 @@ } .right { display: grid; - margin-top: size(457); + margin-top: size(297); grid-template-columns: size(275) size(259); @include mobile { @@ -132,7 +132,7 @@ display: flex; align-items: flex-start; height: 100%; - background-color: "transparent"; + background-color: $gray900; &:after { content: ''; @@ -150,7 +150,7 @@ } .rect { - margin-top: size(200); + margin-top: size(295); @include mobile { margin-top: 0; diff --git a/site/src/components/pages/About/Hero/Hero.tsx b/site/src/components/pages/About/Hero/Hero.tsx index 60559df8..3f2a13b8 100644 --- a/site/src/components/pages/About/Hero/Hero.tsx +++ b/site/src/components/pages/About/Hero/Hero.tsx @@ -23,7 +23,7 @@ const getContent = (isMobile: boolean | null, content: string | { isDesktop: str return isMobile ? content.isMobile : content.isDesktop } -const Hero = ({ className, data: { title, description } }: HeroProps) => { +const Hero = ({ className, data: { title, description, info, content, future, footer } }: HeroProps) => { const { isMobile } = useViewport() return (
@@ -31,20 +31,57 @@ const Hero = ({ className, data: { title, description } }: HeroProps) => {

{description}

-
+

{info}

- {!isMobile && ( - - {null} - - )} + + +
+ +
+ + +
+ {content.map((el) => ( +
+

{el.title}

+
+ {el.description.map((item, index) => ( + // biome-ignore lint/suspicious/noArrayIndexKey: +

{getContent(isMobile, item)}

+ ))} +
+
+ ))} + + {future.map((el) => ( +
+

{el.title}

+
+

{el.description}

+
+
+ ))} + +
+
+

Stay in touch with our news

+
+ {footer.socials.map((el) => ( + + ))} +
+
+ +
+
+
) } diff --git a/site/src/components/pages/About/JoinNil/JoinNil.module.scss b/site/src/components/pages/About/JoinNil/JoinNil.module.scss index 3cfdc898..65a6654d 100644 --- a/site/src/components/pages/About/JoinNil/JoinNil.module.scss +++ b/site/src/components/pages/About/JoinNil/JoinNil.module.scss @@ -130,8 +130,3 @@ } } } - -.devnet { - padding-left: 0.5ch; - @include paragraph; -} diff --git a/site/src/components/pages/About/JoinNil/JoinNil.tsx b/site/src/components/pages/About/JoinNil/JoinNil.tsx index 3f57ab46..c26eeb5e 100644 --- a/site/src/components/pages/About/JoinNil/JoinNil.tsx +++ b/site/src/components/pages/About/JoinNil/JoinNil.tsx @@ -4,14 +4,8 @@ import WhiteRectangle from 'components/WhiteRectangle' import classNames from 'classnames' import PropTypes, { InferProps } from 'prop-types' import s from './JoinNil.module.scss' -import { useViewport } from 'hooks/useViewport' -import Button from 'components/Button' -import { WebButton } from 'components/WebButton' -import { seo } from 'constants/seo' function JoinNil({ title, leftText, rightText, social, className }: InferProps) { - const { isMobile } = useViewport() - return (
@@ -21,19 +15,12 @@ function JoinNil({ title, leftText, rightText, social, className }: InferProps
-

- {leftText} - - Join our devnet - -

- {!isMobile &&
} +

{leftText}

- {/*

{rightText}

*/} -
+

{rightText}

diff --git a/site/src/components/pages/About/Toolchain/Toolchain.module.scss b/site/src/components/pages/About/Toolchain/Toolchain.module.scss index d9a1045a..c09debfc 100644 --- a/site/src/components/pages/About/Toolchain/Toolchain.module.scss +++ b/site/src/components/pages/About/Toolchain/Toolchain.module.scss @@ -35,19 +35,17 @@ .heroDescription p { @include paragraph; - max-width: size(400); + max-width: size(200); background-color: $gray900; - margin-bottom: size($spacing32); @include mobile { - max-width: 100%; - margin-bottom: size(0); + max-width: 50%; } } .right { position: relative; - margin-top: size(0); + margin-top: size(240); background-color: $gray900; &:after { diff --git a/site/src/components/pages/BlogsPage/BlogsPage.tsx b/site/src/components/pages/BlogsPage/BlogsPage.tsx index ccac1921..bce118ed 100644 --- a/site/src/components/pages/BlogsPage/BlogsPage.tsx +++ b/site/src/components/pages/BlogsPage/BlogsPage.tsx @@ -27,6 +27,7 @@ import ToggleButton from 'components/ToggleButton' type BlogsPageProps = { data: { + tags: MappedTag[] posts: MappedBlog[] categories: MappedCategory[] } @@ -52,6 +53,14 @@ function BlogsPage({ data, activeTag, activeCategory }: BlogsPageProps) {

Blog

+

+ + Stay in touch with our products development and explore zero‑knowledge technology + + + Stay in touch with our products development and explore zero-knowledge technology + +

@@ -79,7 +88,7 @@ function BlogsPage({ data, activeTag, activeCategory }: BlogsPageProps) {
- {/*
+
{data.tags.map((tag) => ( ))} -
*/} +
diff --git a/site/src/components/pages/Careers/Careers.tsx b/site/src/components/pages/Careers/Careers.tsx index f3ae93a6..8fb563a2 100644 --- a/site/src/components/pages/Careers/Careers.tsx +++ b/site/src/components/pages/Careers/Careers.tsx @@ -38,7 +38,7 @@ const Careers = ({ data }: CareersProps) => {
- {!isMobile && } + {
+ {isMobile && } {!isMobile && ( diff --git a/site/src/components/pages/Careers/JoinUs/JoinUs.tsx b/site/src/components/pages/Careers/JoinUs/JoinUs.tsx index 1dbd0b7b..44314a78 100644 --- a/site/src/components/pages/Careers/JoinUs/JoinUs.tsx +++ b/site/src/components/pages/Careers/JoinUs/JoinUs.tsx @@ -17,8 +17,7 @@ const JoinUs = ({ className, data: { title, cards } }: JoinUsProps) => { return (
-
- {/*

{title}

+

{title}

{cards.map((card) => ( //
{ //
))} -
*/} +
diff --git a/site/src/components/pages/ZkSharding/Hero/Hero.module.scss b/site/src/components/pages/ZkSharding/Hero/Hero.module.scss index 5b5d38d0..132d7c9a 100644 --- a/site/src/components/pages/ZkSharding/Hero/Hero.module.scss +++ b/site/src/components/pages/ZkSharding/Hero/Hero.module.scss @@ -54,7 +54,7 @@ padding: size(7) size($spacing32) size($spacing32 + 3) size($spacing32); p { - flex-basis: 100%; + flex-basis: 50%; @include paragraph; } diff --git a/site/src/components/pages/ZkSharding/Hero/Hero.tsx b/site/src/components/pages/ZkSharding/Hero/Hero.tsx index c4709972..144b2d1c 100644 --- a/site/src/components/pages/ZkSharding/Hero/Hero.tsx +++ b/site/src/components/pages/ZkSharding/Hero/Hero.tsx @@ -15,14 +15,13 @@ import { usePrefersReducedMotion } from 'hooks/usePrefersReduceMotion' import { WebButton } from 'components/WebButton' import { useIntersectionObserver } from 'hooks/useIntersectionObserver' import { Column } from 'components/Column' -import { zkShardingPageData } from 'stubs/zkShardingPageData' type HeroProps = { className?: string - data: typeof zkShardingPageData.hero + data: typeof zkllvmPageData.hero } -const Hero = ({ className, data: { title, description, list } }: HeroProps) => { +const Hero = ({ className, data: { title, description, info, list } }: HeroProps) => { const lottieRef = useRef(null) const lottieInstance = useRef(null) const isIntersected = useRef(false) @@ -64,17 +63,20 @@ const Hero = ({ className, data: { title, description, list } }: HeroProps) => {

{description}

+

{info}

{!isMobile && }
-
{/*
*/}
+
+
+
- + Learn more
diff --git a/site/src/components/pages/ZkSharding/Intro/Intro.module.scss b/site/src/components/pages/ZkSharding/Intro/Intro.module.scss index 5a2a80cc..5164494a 100644 --- a/site/src/components/pages/ZkSharding/Intro/Intro.module.scss +++ b/site/src/components/pages/ZkSharding/Intro/Intro.module.scss @@ -43,7 +43,7 @@ padding: 0 size($spacing32); p { - @include heading-02; + @include heading-04; line-height: size(27); } diff --git a/site/src/components/pages/ZkSharding/Intro/Intro.tsx b/site/src/components/pages/ZkSharding/Intro/Intro.tsx index c68a0b08..0449b102 100644 --- a/site/src/components/pages/ZkSharding/Intro/Intro.tsx +++ b/site/src/components/pages/ZkSharding/Intro/Intro.tsx @@ -15,7 +15,7 @@ const IntroAnimationWidget = ({ >) => ( { duration={700} delay={500} isVisible={isVisible} - text="" + text="=nil; is a zkRollup that uses zkSharding to securely scale Ethereum to 60,000+ TPS, empowering web3 developers to build scalable, secure, and composable applications." /> )} diff --git a/site/src/components/pages/ZkSharding/Intro/data.tsx b/site/src/components/pages/ZkSharding/Intro/data.tsx index 7e03b02a..8aaa5f4d 100644 --- a/site/src/components/pages/ZkSharding/Intro/data.tsx +++ b/site/src/components/pages/ZkSharding/Intro/data.tsx @@ -18,7 +18,13 @@ export const getAnimatedItemList = (prefersReduceMotion?: boolean) => [ id: 'z3', ySourceValue: '-336px', yTransformValue: '-99%', - children: (isCompleted: boolean) => , + children: (isCompleted: boolean) => ( + + ), }, { id: 'z4', diff --git a/site/src/components/pages/ZkSharding/JoinNil/JoinNil.module.scss b/site/src/components/pages/ZkSharding/JoinNil/JoinNil.module.scss index 8609b185..eec48fc8 100644 --- a/site/src/components/pages/ZkSharding/JoinNil/JoinNil.module.scss +++ b/site/src/components/pages/ZkSharding/JoinNil/JoinNil.module.scss @@ -126,8 +126,3 @@ margin-bottom: size(60); } } - -.devnet { - padding-left: 0.5ch; - @include paragraph; -} diff --git a/site/src/components/pages/ZkSharding/JoinNil/JoinNil.tsx b/site/src/components/pages/ZkSharding/JoinNil/JoinNil.tsx index 173ded2d..3b8d6383 100644 --- a/site/src/components/pages/ZkSharding/JoinNil/JoinNil.tsx +++ b/site/src/components/pages/ZkSharding/JoinNil/JoinNil.tsx @@ -8,8 +8,6 @@ import WhiteRectangle from 'components/WhiteRectangle' import s from './JoinNil.module.scss' import { JoinNilBaseData } from './JoinNilBaseData' -import { WebButton } from 'components/WebButton' -import { seo } from 'constants/seo' type JoinNilProps = { className?: string @@ -33,7 +31,7 @@ const JoinNil = ({ withMargin, }: JoinNilProps) => { const { isMobile } = useViewport() - //const contentRight = getContent(isMobile, content) + const contentRight = getContent(isMobile, content) return (
({
{!isMobile && } -

- {content.left} - - Join our devnet - -

- {!isMobile &&
} +

{content.left}

{!isMobile && } - {/*

{contentRight}

*/} -
+

{contentRight}

diff --git a/site/src/components/pages/ZkSharding/More/More.tsx b/site/src/components/pages/ZkSharding/More/More.tsx index b82ae40f..792eade7 100644 --- a/site/src/components/pages/ZkSharding/More/More.tsx +++ b/site/src/components/pages/ZkSharding/More/More.tsx @@ -28,7 +28,7 @@ const More = ({ data: { title, description, contentFooter, footer }, className } className={s.heading} descriptionClassName={s.description} title={title} - offset={isMobile ? '20px' : '120px'} + description={description} /> {!isMobile && } diff --git a/site/src/components/pages/ZkSharding/ZkSharding.tsx b/site/src/components/pages/ZkSharding/ZkSharding.tsx index 19a55e5f..fb85dcc3 100644 --- a/site/src/components/pages/ZkSharding/ZkSharding.tsx +++ b/site/src/components/pages/ZkSharding/ZkSharding.tsx @@ -41,8 +41,8 @@ const ZkSharding = ({ data }: Props) => {
- {/* */} - {/* */} + + ) => ) export async function getStaticProps() { - const [posts, categories, config] = await Promise.all([ + const [posts, tags, categories, config] = await Promise.all([ getBlogPosts({ sort: BLOG_POST_SORT, }), + getTags({ + filters: { + blogs: { + id: { + $notNull: true, + }, + }, + }, + }), getCategories(), getSiteConfig(), ]) @@ -31,6 +40,7 @@ export async function getStaticProps() { props: { cms: { posts: posts, + tags, categories, }, seo: seoData, diff --git a/site/src/stubs/aboutPageData.ts b/site/src/stubs/aboutPageData.ts index 386fdc7a..214f6f0f 100644 --- a/site/src/stubs/aboutPageData.ts +++ b/site/src/stubs/aboutPageData.ts @@ -3,9 +3,10 @@ import { joinNil } from './joinPartData' export const aboutPageData = { hero: { - title: "We're dedicated to solving hard problems", + title: 'Enabling scalable trustless computing with zero-knowledge', description: - 'Founded in 2018, =nil; Foundation has been consistently developing and executing novel ideas that leverage state-of-the-art cryptography, specifically ZK.', + '=nil; Foundation is\xa0a\xa0pioneer in\xa0zero\u2011knowledge technology, dedicated to making zkProofs and trustless data management accessible for developers.', + info: 'Our solutions facilitate scalable trustless computing and data access, organized in one flexible toolchain secured by Ethereum.', content: [ { title: '2018', @@ -80,14 +81,15 @@ export const aboutPageData = { }, toolchain: { - title: 'Explore our work', + title: 'Robust toolchain to accelerate the development of zk-enabled applications', description: 'Implementing zero-knowledge technology into products development and data management is now transparent and cost-effective.', content: [ { id: 1, - title: '=nil;', - description: 'An Ethereum L2, powered by zkSharding', + title: '=nil; zkSharding', + description: + 'A zkRollup that securely scales Ethereum to 60,000+ TPS through zkSharding, empowering web3 developers to build scalable, secure, and composable applications.', link: '/blog/post/database-management-system', list: [ { @@ -98,7 +100,8 @@ export const aboutPageData = { { id: 2, title: 'Proof Market', - description: 'Marketplace for zero-knowledge proofs.', + description: + 'Decentralized marketplace for zero-knowledge proofs. Automatic generation of high-performance circuits for multiple protocols', link: 'https://github.com/NilFoundation/proof-market-toolchain', list: [ { @@ -109,7 +112,8 @@ export const aboutPageData = { { id: 3, title: 'zkLLVM', - description: 'Circuit compiler from C++ and Rust.', + description: + 'Circuit compiler from C++, Rust, or other mainstream languages. Outsourcing zkProof generation to optimize time & cost of zk implementation', link: 'https://github.com/NilFoundation/zkllvm', list: [ { @@ -119,8 +123,9 @@ export const aboutPageData = { }, { id: 4, - title: 'Placeholder & Crypto3', - description: 'Flexible zero-knowledge proof system and cryptography suite.', + title: 'Placeholder & Crypto3 suite', + description: + 'A highly flexible general-purpose zero-knowledge proof system and cryptography suite for fast and safe prototyping', link: 'https://github.com/NilFoundation/crypto3', list: [ { @@ -187,8 +192,8 @@ export const aboutPageData = { }, ourTeam: { - title: 'Join the team', - description: 'Learn more about open positions.', + title: 'Become part of our team', + description: 'Learn more about our team and discover current open positions.', button: { text: 'Go to Careers page', link: '/careers', diff --git a/site/src/stubs/careersPageData.ts b/site/src/stubs/careersPageData.ts index 18008378..e62a4b57 100644 --- a/site/src/stubs/careersPageData.ts +++ b/site/src/stubs/careersPageData.ts @@ -2,8 +2,8 @@ import { joinNil } from './joinPartData' export const careersPageData = { intro: { - title: 'Work on hard problems at the frontier of blockchain scalability', - description: 'Join our global team and work from anywhere.', + title: 'Work at the forefront of zero-knowledge development', + description: 'Be it from our Cyprus office, from home, or fully remote.', }, joinUs: { title: 'Contribute to our cutting edge toolchain', diff --git a/site/src/stubs/joinPartData.ts b/site/src/stubs/joinPartData.ts index 224c9966..e623160b 100644 --- a/site/src/stubs/joinPartData.ts +++ b/site/src/stubs/joinPartData.ts @@ -1,8 +1,8 @@ export const joinNil = { - title: 'Join our community', + title: 'Join our community for expert help', social: 'community', content: { - left: `Want to build?`, + left: `Whether you're a seasoned developer or a zk enthusiast taking your first steps, we've got your back!`, right: 'Join our community to collaborate with experienced engineers on building secure, scalable and composable decentralized applications.', newRight: { diff --git a/site/src/stubs/zkShardingPageData.ts b/site/src/stubs/zkShardingPageData.ts index 05ed79ef..6f2cde18 100644 --- a/site/src/stubs/zkShardingPageData.ts +++ b/site/src/stubs/zkShardingPageData.ts @@ -3,10 +3,10 @@ import { joinNil } from './joinPartData' export const zkShardingPageData = { hero: { - title: 'Why build on =nil;?', + title: 'Scale starting at 60,000 TPS', description: - 'zkSharding enables a new generation of highly scalable applications by distributing workloads across shards.', - // info: 'As the number of these dedicated shards grows, so does the maximum Ethereum throughput, linearly.', + 'By implementing dynamic zkSharding, =nil; enables secure parallel execution of transactions across shards operating independently. ', + info: 'As the number of these dedicated shards grows, so does the maximum Ethereum throughput, linearly.', list: [ `Compile circuits from existing code, don't start from scratch`, 'Superior circuit performance with no zkVMs involved', @@ -18,7 +18,8 @@ export const zkShardingPageData = { }, more: { title: 'More than just another zkRollup', - description: '"Tap into the power of hundreds of rollups from a single network."', + description: + 'zkSharding facilitates scalable transaction processing and data availability, all without fragmenting liquidity or economic security.', contentFooter: 'Separate decentralized shards compose a single execution layer. The main shard at the top validates transactions across all shards and proves them to Ethereum.',