From 890e3299cf847770ed3447c0a9fcf5112bab6bc1 Mon Sep 17 00:00:00 2001 From: Tal Ben Avi <91826661+TalBenAvi@users.noreply.github.com> Date: Wed, 1 May 2024 16:40:38 +0300 Subject: [PATCH 01/17] =?UTF-8?q?Create=20Page=20=E2=80=9Cgrant=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/pages/grant.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 _data/pages/grant.yml diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml new file mode 100644 index 0000000000..b64fb265ac --- /dev/null +++ b/_data/pages/grant.yml @@ -0,0 +1,7 @@ +id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 +title: Grant +template: content +hideToc: false +hidden_page: false +breadcrumbs: true +page_last_updated: true From 6a2f2051461e7010626169c80ea9c91447ea8637 Mon Sep 17 00:00:00 2001 From: Tal Ben Avi <91826661+TalBenAvi@users.noreply.github.com> Date: Wed, 1 May 2024 16:51:05 +0300 Subject: [PATCH 02/17] =?UTF-8?q?Update=20Page=20=E2=80=9Cgrant=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/pages/grant.yml | 143 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 140 insertions(+), 3 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index b64fb265ac..efe58880ac 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -1,7 +1,144 @@ id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 title: Grant template: content -hideToc: false +hideToc: true hidden_page: false -breadcrumbs: true -page_last_updated: true +breadcrumbs: false +page_last_updated: false +blocks: + - type: hero + variant: learn + buttonUrl: "" + title: Seed Grant Program + description: "" + - type: card_display + title: Application Process + button: Apply Now + buttonLink: https://starknet.questbook.app/proposal_form/?grantId=661667585afea0acb56c9f08&chainId=10&newTab=true + card_display_items: + - title: Application + description: "Applicants will submit proposals via an Questbook application form + provided by the Starknet Foundation team. " + - title: Internal Evaluation + description: " Each application will be assessed by members of the Starknet + Foundation and Starkware team based on criteria such as potential + impact, innovation, milestones, community engagement & track record, + and embeddedness with the Starknet ecosystem." + - title: Results + description: We plan to communicate decisions on your application within an + approximate two week timeframe. + - title: Onboarding + description: "Upon signing a grant agreement and completing KYC, the Starknet + Foundation will send funds. " + - title: Grant Deliverables + description: "After completion of the work, the Foundation will assess results + and share deliverables (blog post, video, AMA) with the team. " + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + The grants will be awarded to individuals and teams demonstrating + promising results in building applications on Starknet, using any + combination of the following criteria: + + + * Prior development experience on Starknet. + + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + + * Willing to submit a demo or links to a proof of concept or MVP. + + * Planning on using or building upon existing Starknet tools and integrations. + + + **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** + heading: Who Can Apply? + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + + + Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. + + + Ineligible applications include anything related to: + + + * Gambling + + * Drugs + + * Firearms + + * Illicit trade + + * Money laundering + + * Any criminal activity + heading: Who is Not Eligible + - type: card_list + randomize: false + title: Apply Now! + card_list_items: + - title: Seed Grant Program Application Form + description: Application Form + website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ + ea0acb56c9f08&chainId=10&newTab=true " + - type: group + blocks: [] + - type: accordion + heading: FAQs + blocks: + - label: What is the Seed Grants Program? + body: "* The Seed Grants Program offers teams developing on Starknet grants of + up to $25,000 to foster the growth of the Starknet ecosystem" + - label: Who can apply? + body: >- + The grants will be awarded to individuals and teams demonstrating + promising results in building applications on Starknet, using any + combination of the following criteria: + + + * Prior development experience on Starknet. + + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + + * Willing to submit a demo or links to a proof of concept or MVP. + + * Planning on using or building upon existing Starknet tools and integrations. + + + All applicants will be required to provide an explanation detailing how the grant will be used within the next three months. + + + Please note that projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. + - label: What currency are grants paid in? + body: Grants are paid out in USDC. + - label: How long will it take to receive a response on my application? + body: You should receive a response around \[two weeks] after submission. + - label: What types of projects do you provide grants to? + body: Any project building on Starknet can be eligible for a grant. There is no + specific industry vertical targeted and the program is open to all + types of submissions. + - label: Who is reviewing grant applications? + body: Starknet Foundation and Starkware team members will be reviewing the + applications. + - label: Is my application confidential? + body: Applications will not be made public and will only be shared amongst the + Starknet Foundation and Starkware team. + - label: Will I hear back if my request is rejected? + body: Yes — you will hear back if your application is not accepted. + - label: Are there application deadlines? + body: No – you can apply for Seed Grants on an ongoing basis.  Applications will + be reviewed in rounds. + - label: How can I apply for a grant? + body: Please apply via this link, where you will be asked to fill out several + questions. + - label: How will the reviewers evaluate my application? + body: Your application will undergo evaluation by members of the Starknet + Foundation and Starkware team, focusing on factors such as impact, + innovation, community engagement, track record, and other relevant + criteria. From c33e8680faa5e7ae3fdeba3c1f441bb22ea830b0 Mon Sep 17 00:00:00 2001 From: Tal Ben Avi <91826661+TalBenAvi@users.noreply.github.com> Date: Wed, 1 May 2024 16:51:33 +0300 Subject: [PATCH 03/17] =?UTF-8?q?Update=20Page=20=E2=80=9Cgrant=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/pages/grant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index efe58880ac..8b6e4ec6e5 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -4,7 +4,7 @@ template: content hideToc: true hidden_page: false breadcrumbs: false -page_last_updated: false +page_last_updated: true blocks: - type: hero variant: learn From b4c8fe2c525483de02e047deea85a177c7d5144b Mon Sep 17 00:00:00 2001 From: Tal Ben Avi <91826661+TalBenAvi@users.noreply.github.com> Date: Wed, 1 May 2024 16:51:44 +0300 Subject: [PATCH 04/17] =?UTF-8?q?Update=20Page=20=E2=80=9Cgrant=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/pages/grant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 8b6e4ec6e5..35feff5117 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -7,7 +7,7 @@ breadcrumbs: false page_last_updated: true blocks: - type: hero - variant: learn + variant: seed_grant_program buttonUrl: "" title: Seed Grant Program description: "" From c8fdc1b6a6a22dfc03e158063ad00d25e9b3f961 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Wed, 1 May 2024 16:54:17 +0300 Subject: [PATCH 05/17] creating Grant page --- public/assets/application.svg | 77 ++++++++ .../assets/ecosystem/seed_grant_program.svg | 170 ++++++++++++++++++ workspaces/cms-config/src/blocks.ts | 61 +++++++ workspaces/cms-data/src/pages.ts | 16 ++ workspaces/website/src/blocks/Block.tsx | 10 ++ .../website/src/blocks/DisplayCardItems.tsx | 69 +++++++ .../src/components/Card/DisplayCard.tsx | 81 +++++++++ .../src/components/HeroImage/HeroImage.tsx | 59 +++--- 8 files changed, 514 insertions(+), 29 deletions(-) create mode 100644 public/assets/application.svg create mode 100644 public/assets/ecosystem/seed_grant_program.svg create mode 100644 workspaces/website/src/blocks/DisplayCardItems.tsx create mode 100644 workspaces/website/src/components/Card/DisplayCard.tsx diff --git a/public/assets/application.svg b/public/assets/application.svg new file mode 100644 index 0000000000..a0b7e27f4a --- /dev/null +++ b/public/assets/application.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/ecosystem/seed_grant_program.svg b/public/assets/ecosystem/seed_grant_program.svg new file mode 100644 index 0000000000..0404e9a56d --- /dev/null +++ b/public/assets/ecosystem/seed_grant_program.svg @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/workspaces/cms-config/src/blocks.ts b/workspaces/cms-config/src/blocks.ts index bb077a138b..96e26f46e2 100644 --- a/workspaces/cms-config/src/blocks.ts +++ b/workspaces/cms-config/src/blocks.ts @@ -249,6 +249,28 @@ export const cardListItem = [ }, ] satisfies CmsField[]; +export const cardDisplayItem = [ + { + label: "Title", + name: "title", + widget: "string", + crowdin: true, + }, + { + label: "Description", + name: "description", + widget: "string", + crowdin: false, + }, + { + label: "Image", + required: false, + name: "image", + widget: "image", + crowdin: false, + }, +] satisfies CmsField[]; + const videoChapterFields = [ { crowdin: true, @@ -513,6 +535,44 @@ export const blocks = [ }, ], }, + { + name: "card_display", + label: "Cards display", + widget: "object", + fields: [ + { + label: "Title", + name: "title", + required: false, + widget: "string", + crowdin: true, + }, + { + label: "button", + name: "button", + required: false, + widget: "string", + crowdin: true, + }, + { + label: "button link", + name: "buttonLink", + required: false, + widget: "string", + crowdin: true, + }, + { + label: "Card display items", + name: "card_display_items", + widget: "list", + fields: cardDisplayItem, + crowdin: true, + required: true, + index_file: "", + meta: true, + }, + ], + }, { name: "hero", label: "Hero", @@ -542,6 +602,7 @@ export const blocks = [ "community", "nodes_and_services", "security", + "seed_grant_program", ], default: "learn", }, diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index f29c8c230c..b313214863 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -66,6 +66,12 @@ export interface ListCardItems { type: string; } +export interface DisplayCardItems { + title: string; + description: string; + image: string; +} + export interface ListCardItemsBlock { readonly type: "card_list"; readonly title: string; @@ -74,6 +80,15 @@ export interface ListCardItemsBlock { readonly description: string; randomize?: boolean; } +export interface DisplayCardItemsBlock { + readonly type: "card_display"; + readonly title: string; + readonly card_display_items: DisplayCardItems[]; + readonly noOfItems: number; + readonly button: string; + readonly buttonLink: string; + randomize?: boolean; +} export interface LinkListItem { readonly type: "link_list_item"; @@ -202,6 +217,7 @@ export type Block = | AccordionBlock | OrderedBlock | ListCardItemsBlock + | DisplayCardItemsBlock | AmbassadorsListBlock | VideoSectionBlock | NewsletterBlock; diff --git a/workspaces/website/src/blocks/Block.tsx b/workspaces/website/src/blocks/Block.tsx index 431aaebca3..ef6bfdbac2 100644 --- a/workspaces/website/src/blocks/Block.tsx +++ b/workspaces/website/src/blocks/Block.tsx @@ -22,6 +22,7 @@ import VideoSectionBlock from "./VideoSectionBlock"; import { NewsletterCard } from "@ui/Card/NewsletterCard"; import { YoutubePlayer } from "@ui/YoutubePlayer/YoutubePlayer"; import NavbarStickyBanner from "../pages/(components)/NavbarStickyBanner/NavbarStickyBanner"; +import DisplayCardItems from "./DisplayCardItems"; export enum BlockPlacements { DEFAULT = "DEFAULT", @@ -188,6 +189,15 @@ export function Block({ }} /> ); + case "card_display": + return ( + + ); case "video_section": return ; } diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx new file mode 100644 index 0000000000..74929a4384 --- /dev/null +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -0,0 +1,69 @@ +import { Box, Flex, Container, LinkBox, Link } from "@chakra-ui/react"; +import { Heading } from "@ui/Typography/Heading"; +import { slugify } from "@starknet-io/cms-utils/src/index"; +import type { DisplayCardItems } from "@starknet-io/cms-data/src/pages"; +import { DisplayCard } from "@ui/Card/DisplayCard"; + +interface Props extends LocaleProps { + title: string; + button?: string; + buttonLink?: string; + card_display_items: DisplayCardItems[]; + randomize?: boolean; +} + +export default function DisplayCardItems({ + params: { locale }, + title, + button, + buttonLink, + card_display_items, +}: Props): JSX.Element { + return ( + + + + {title && ( + + {title} + + )} + {button && ( + + {button} → + + )} + + + {card_display_items?.map(({ title, description, image }, i) => { + return ( + + ); + })} + + + + ); +} diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx new file mode 100644 index 0000000000..5a8575f12a --- /dev/null +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -0,0 +1,81 @@ +import { Box, Stack, BoxProps, Img, Text, Circle } from "@chakra-ui/react"; +import { Heading } from "@ui/Typography/Heading"; +import { CardGradientBorder } from "@ui/Card/components/CardGradientBorder"; + +type Props = { + readonly title?: string; + readonly description?: string; + readonly image?: string; + readonly index: number; +} & BoxProps; + +export const DisplayCard = (props: Props) => { + const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${props.image}`; + const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; + + return ( + + + + + + {props.image && ( + + + + + + )} + + + + {props.index} + + + {props.title} + + + {props.description} + + + + + + + ); +}; diff --git a/workspaces/website/src/components/HeroImage/HeroImage.tsx b/workspaces/website/src/components/HeroImage/HeroImage.tsx index 3bb41dfe82..846f67f953 100644 --- a/workspaces/website/src/components/HeroImage/HeroImage.tsx +++ b/workspaces/website/src/components/HeroImage/HeroImage.tsx @@ -26,7 +26,8 @@ type Props = { | "community" | "nodes_and_services" | "security" - | "roadmap"; + | "roadmap" + | "seed_grant_program"; buttonText?: string; buttonUrl?: string; onButtonClick?: () => void; @@ -49,7 +50,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-dapps-a 3.96%, hero-gradient-dapps-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, block_explorers: { img: "/assets/ecosystem/blockexplorers.svg", @@ -57,7 +58,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-block-explorers-a 3.96%, hero-gradient-block-explorers-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, bridges: { img: "/assets/ecosystem/bridges.svg", @@ -65,7 +66,14 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-bridges-on-ramps-a 3.96%, hero-gradient-bridges-on-ramps-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", + }, + seed_grant_program: { + img: "/assets/ecosystem/seed_grant_program.svg", + gradient: "linear(258.76deg,#CDCDE8, #DEFAFF)", + arrowGradient: "linear(95.36deg, #7CB3B9 1.31%, #658DAA 169.4%)", + arrowOpacity: "0.2", + arrowTipColor: "#D672EF", }, wallets: { img: "/assets/ecosystem/wallets.svg", @@ -73,7 +81,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-wallets-a 3.96%, hero-gradient-wallets-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, learn: { img: "/assets/ecosystem/learn.svg", @@ -81,7 +89,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-learn-a 3.96%, hero-gradient-learn-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, build: { img: "/assets/ecosystem/developer.svg", @@ -89,7 +97,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-developer-a 3.96%, hero-gradient-developer-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, community: { img: "/assets/ecosystem/community.svg", @@ -97,7 +105,7 @@ const heroStyles: Record = { "linear(258.76deg, hero-gradient-community-a 3.96%, hero-gradient-community-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, nodes_and_services: { img: "/assets/ecosystem/nodes_and_services.svg", @@ -105,7 +113,7 @@ const heroStyles: Record = { "linear-gradient(258.76deg, hero-gradient-nodes-and-services-a 3.96%, hero-gradient-nodes-and-services-b 254.34%)", arrowGradient: "linear(95.36deg, #EC796B 1.31%, #D672EF 169.4%)", arrowOpacity: "0.2", - arrowTipColor: "#D672EF" + arrowTipColor: "#D672EF", }, roadmap: { img: "/assets/ecosystem/roadmap.svg", @@ -113,15 +121,15 @@ const heroStyles: Record = { arrowGradient: "linear(45deg, #82BDBD 100%, #4F6D87 100%)", backgroundBlendMode: "multiply, multiply, multiply, normal", arrowOpacity: "1", - arrowTipColor: "#82BDBD" + arrowTipColor: "#82BDBD", }, security: { img: "/assets/ecosystem/security.svg", gradient: "linear(262.88deg, hero-gradient-security-a 21.62%, hero-gradient-security-b 100.38%)", arrowGradient: "linear(250.04deg, #5B5F68 57.45%, #81D2FF 119.39%)", - arrowTipColor: "#5B5F68" - } + arrowTipColor: "#5B5F68", + }, }; export const HeroImage = ({ @@ -137,9 +145,15 @@ export const HeroImage = ({ @@ -253,7 +265,7 @@ export const HeroImage = ({ height: 0, borderTop: "2px solid transparent", borderBottom: "2px solid transparent", - borderLeft: `5px solid ${heroStyles[variant].arrowTipColor}` + borderLeft: `5px solid ${heroStyles[variant].arrowTipColor}`, }} /> @@ -274,9 +286,7 @@ export const HeroImage = ({ {description} {!!buttonText && ( - + - */} From 4a38880cba1a35295f592e6af21740fc88970dc1 Mon Sep 17 00:00:00 2001 From: Tal Ben Avi <91826661+TalBenAvi@users.noreply.github.com> Date: Thu, 2 May 2024 11:15:16 +0300 Subject: [PATCH 06/17] =?UTF-8?q?Update=20Page=20=E2=80=9Cgrant=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/pages/grant.yml | 68 +++++++++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 28 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 35feff5117..49cbf86aec 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -2,6 +2,7 @@ id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 title: Grant template: content hideToc: true +parent_page: "" hidden_page: false breadcrumbs: false page_last_updated: true @@ -33,52 +34,63 @@ blocks: - title: Grant Deliverables description: "After completion of the work, the Foundation will assess results and share deliverables (blog post, video, AMA) with the team. " - - type: flex_layout - heading_variant: sm + - type: container blocks: - - type: markdown - body: >- - The grants will be awarded to individuals and teams demonstrating - promising results in building applications on Starknet, using any - combination of the following criteria: + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + The grants will be awarded to individuals and teams demonstrating + promising results in building applications on Starknet, using any + combination of the following criteria: - * Prior development experience on Starknet. + * Prior development experience on Starknet. - * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. - * Willing to submit a demo or links to a proof of concept or MVP. + * Willing to submit a demo or links to a proof of concept or MVP. - * Planning on using or building upon existing Starknet tools and integrations. + * Planning on using or building upon existing Starknet tools and integrations. - **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** - heading: Who Can Apply? - - type: flex_layout - heading_variant: sm - blocks: - - type: markdown - body: >- - + **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** + heading: Who Can Apply? + xl: 1 + lg: 1 + md: 1 + base: 1 + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + - Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. + Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. - Ineligible applications include anything related to: + Ineligible applications include anything related to: - * Gambling + * Gambling - * Drugs + * Drugs - * Firearms + * Firearms - * Illicit trade + * Illicit trade - * Money laundering + * Money laundering - * Any criminal activity - heading: Who is Not Eligible + * Any criminal activity + heading: Who is Not Eligible + base: 1 + md: 1 + lg: 1 + xl: 1 + max_width: 1062 - type: card_list randomize: false title: Apply Now! From 4efce33465c163b19c5dd974024a90fb3a2d559a Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 11:26:45 +0300 Subject: [PATCH 07/17] updating grant page layout --- _data/pages/grant.yml | 131 ++++++++++++++++++ public/assets/grant_deliverables.svg | 55 ++++++++ public/assets/internal_evaluation.svg | 47 +++++++ public/assets/onboarding.svg | 11 ++ public/assets/results.svg | 17 +++ workspaces/cms-data/src/pages.ts | 9 +- .../website/src/blocks/DisplayCardItems.tsx | 4 +- .../src/components/Card/DisplayCard.tsx | 34 ++++- 8 files changed, 301 insertions(+), 7 deletions(-) create mode 100644 _data/pages/grant.yml create mode 100644 public/assets/grant_deliverables.svg create mode 100644 public/assets/internal_evaluation.svg create mode 100644 public/assets/onboarding.svg create mode 100644 public/assets/results.svg diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml new file mode 100644 index 0000000000..7c08a7ce50 --- /dev/null +++ b/_data/pages/grant.yml @@ -0,0 +1,131 @@ +id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 +title: Grant +template: content +hideToc: true +parent_page: "" +hidden_page: false +breadcrumbs: false +page_last_updated: true +blocks: + - type: hero + variant: seed_grant_program + buttonUrl: "" + title: Seed Grant Program + description: "" + - type: card_display + title: Application Process + button: Apply Now + buttonLink: https://starknet.questbook.app/proposal_form/?grantId=661667585afea0acb56c9f08&chainId=10&newTab=true + card_display_items: + - title: Application + description: "Applicants will submit proposals via an Questbook application form + provided by the Starknet Foundation team. " + - title: Internal Evaluation + description: " Each application will be assessed by members of the Starknet + Foundation and Starkware team based on criteria such as potential + impact, innovation, milestones, community engagement & track record, + and embeddedness with the Starknet ecosystem." + - title: Results + description: We plan to communicate decisions on your application within an + approximate two week timeframe. + - title: Onboarding + description: "Upon signing a grant agreement and completing KYC, the Starknet + Foundation will send funds. " + - title: Grant Deliverables + description: "After completion of the work, the Foundation will assess results + and share deliverables (blog post, video, AMA) with the team. " + - type: container + blocks: + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + The grants will be awarded to individuals and teams demonstrating + promising results in building applications on Starknet, using any + combination of the following criteria: + * Prior development experience on Starknet. + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + * Willing to submit a demo or links to a proof of concept or MVP. + * Planning on using or building upon existing Starknet tools and integrations. + **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** + heading: Who Can Apply? + xl: 1 + lg: 1 + md: 1 + base: 1 + - type: flex_layout + heading_variant: sm + blocks: + - type: markdown + body: >- + + Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. + Ineligible applications include anything related to: + * Gambling + * Drugs + * Firearms + * Illicit trade + * Money laundering + * Any criminal activity + heading: Who is Not Eligible + base: 1 + md: 1 + lg: 1 + xl: 1 + max_width: 1062 + - type: card_list + randomize: false + title: Apply Now! + card_list_items: + - title: Seed Grant Program Application Form + description: Application Form + image: /assets/sn-symbol-gradient.png + website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ + ea0acb56c9f08&chainId=10&newTab=true " + - type: group + blocks: [] + - type: accordion + heading: FAQs + blocks: + - label: What is the Seed Grants Program? + body: "* The Seed Grants Program offers teams developing on Starknet grants of + up to $25,000 to foster the growth of the Starknet ecosystem" + - label: Who can apply? + body: >- + The grants will be awarded to individuals and teams demonstrating + promising results in building applications on Starknet, using any + combination of the following criteria: + * Prior development experience on Starknet. + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + * Willing to submit a demo or links to a proof of concept or MVP. + * Planning on using or building upon existing Starknet tools and integrations. + All applicants will be required to provide an explanation detailing how the grant will be used within the next three months. + Please note that projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. + - label: What currency are grants paid in? + body: Grants are paid out in USDC. + - label: How long will it take to receive a response on my application? + body: You should receive a response around \[two weeks] after submission. + - label: What types of projects do you provide grants to? + body: Any project building on Starknet can be eligible for a grant. There is no + specific industry vertical targeted and the program is open to all + types of submissions. + - label: Who is reviewing grant applications? + body: Starknet Foundation and Starkware team members will be reviewing the + applications. + - label: Is my application confidential? + body: Applications will not be made public and will only be shared amongst the + Starknet Foundation and Starkware team. + - label: Will I hear back if my request is rejected? + body: Yes — you will hear back if your application is not accepted. + - label: Are there application deadlines? + body: No – you can apply for Seed Grants on an ongoing basis. Applications will + be reviewed in rounds. + - label: How can I apply for a grant? + body: Please apply via this link, where you will be asked to fill out several + questions. + - label: How will the reviewers evaluate my application? + body: Your application will undergo evaluation by members of the Starknet + Foundation and Starkware team, focusing on factors such as impact, + innovation, community engagement, track record, and other relevant + criteria. \ No newline at end of file diff --git a/public/assets/grant_deliverables.svg b/public/assets/grant_deliverables.svg new file mode 100644 index 0000000000..12229e9dfa --- /dev/null +++ b/public/assets/grant_deliverables.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/internal_evaluation.svg b/public/assets/internal_evaluation.svg new file mode 100644 index 0000000000..cd707d6fe7 --- /dev/null +++ b/public/assets/internal_evaluation.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/onboarding.svg b/public/assets/onboarding.svg new file mode 100644 index 0000000000..6df0b286ff --- /dev/null +++ b/public/assets/onboarding.svg @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/public/assets/results.svg b/public/assets/results.svg new file mode 100644 index 0000000000..0a5c113721 --- /dev/null +++ b/public/assets/results.svg @@ -0,0 +1,17 @@ + + + + + + + \ No newline at end of file diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index b313214863..7575580254 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -67,9 +67,14 @@ export interface ListCardItems { } export interface DisplayCardItems { - title: string; + title: + | "Application" + | "Internal Evaluation" + | "Results" + | "Onboarding" + | "Grant Deliverables"; description: string; - image: string; + image?: string; } export interface ListCardItemsBlock { diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index 74929a4384..3137dc7d4a 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -3,7 +3,6 @@ import { Heading } from "@ui/Typography/Heading"; import { slugify } from "@starknet-io/cms-utils/src/index"; import type { DisplayCardItems } from "@starknet-io/cms-data/src/pages"; import { DisplayCard } from "@ui/Card/DisplayCard"; - interface Props extends LocaleProps { title: string; button?: string; @@ -51,14 +50,13 @@ export default function DisplayCardItems({ )} - {card_display_items?.map(({ title, description, image }, i) => { + {card_display_items?.map(({ title, description }, i) => { return ( ); })} diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index 5a8575f12a..62db39bc28 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -3,12 +3,24 @@ import { Heading } from "@ui/Typography/Heading"; import { CardGradientBorder } from "@ui/Card/components/CardGradientBorder"; type Props = { - readonly title?: string; + readonly title: + | "Application" + | "Internal Evaluation" + | "Results" + | "Onboarding" + | "Grant Deliverables"; readonly description?: string; readonly image?: string; readonly index: number; } & BoxProps; +const images = { + Application: "/assets/application.svg", + "Internal Evaluation": "/assets/internal_evaluation.svg", + Results: "/assets/results.svg", + Onboarding: "/assets/onboarding.svg", + "Grant Deliverables": "/assets/grant_deliverables.svg", +}; export const DisplayCard = (props: Props) => { const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${props.image}`; const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; @@ -32,7 +44,7 @@ export const DisplayCard = (props: Props) => { spacing={{ base: "3", md: "6" }} align="center" > - {props.image && ( + {props.image ? ( { /> + ) : ( + + + + + )} Date: Thu, 2 May 2024 11:58:45 +0300 Subject: [PATCH 08/17] fixing layout --- _data/pages/grant.yml | 25 ++- workspaces/cms-config/src/blocks.ts | 7 + workspaces/cms-data/src/pages.ts | 1 + .../src/components/Card/DisplayCard.tsx | 130 +++++------- .../website/src/components/Card/ListCard.tsx | 190 +++++++++--------- 5 files changed, 180 insertions(+), 173 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 7c08a7ce50..479d782acf 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -44,11 +44,18 @@ blocks: The grants will be awarded to individuals and teams demonstrating promising results in building applications on Starknet, using any combination of the following criteria: + * Prior development experience on Starknet. + * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. + * Willing to submit a demo or links to a proof of concept or MVP. + * Planning on using or building upon existing Starknet tools and integrations. + + **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** + heading: Who Can Apply? xl: 1 lg: 1 @@ -59,15 +66,21 @@ blocks: blocks: - type: markdown body: >- - Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. Ineligible applications include anything related to: + * Gambling + * Drugs + * Firearms + * Illicit trade + * Money laundering + * Any criminal activity + heading: Who is Not Eligible base: 1 md: 1 @@ -79,15 +92,18 @@ blocks: title: Apply Now! card_list_items: - title: Seed Grant Program Application Form + changeLayout: true description: Application Form image: /assets/sn-symbol-gradient.png website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ ea0acb56c9f08&chainId=10&newTab=true " - type: group blocks: [] - - type: accordion - heading: FAQs + - type: container blocks: + - type: accordion + heading: FAQs + blocks: - label: What is the Seed Grants Program? body: "* The Seed Grants Program offers teams developing on Starknet grants of up to $25,000 to foster the growth of the Starknet ecosystem" @@ -128,4 +144,5 @@ blocks: body: Your application will undergo evaluation by members of the Starknet Foundation and Starkware team, focusing on factors such as impact, innovation, community engagement, track record, and other relevant - criteria. \ No newline at end of file + criteria. + max_width: 1062 \ No newline at end of file diff --git a/workspaces/cms-config/src/blocks.ts b/workspaces/cms-config/src/blocks.ts index 96e26f46e2..c2dc054966 100644 --- a/workspaces/cms-config/src/blocks.ts +++ b/workspaces/cms-config/src/blocks.ts @@ -516,6 +516,13 @@ export const blocks = [ widget: "string", crowdin: true, }, + { + label: "changeLayout", + name: "changeLayout", + required: false, + widget: "boolean", + crowdin: true, + }, { name: "randomize", label: "Randomize", diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index 7575580254..79a38dae3b 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -58,6 +58,7 @@ export interface ListCardItems { start_date_time: string; location: string; city: string; + changeLayout: boolean; discord: string; type_list: { type: string; diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index 62db39bc28..12f1a04c38 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -1,6 +1,5 @@ import { Box, Stack, BoxProps, Img, Text, Circle } from "@chakra-ui/react"; import { Heading } from "@ui/Typography/Heading"; -import { CardGradientBorder } from "@ui/Card/components/CardGradientBorder"; type Props = { readonly title: @@ -10,7 +9,6 @@ type Props = { | "Onboarding" | "Grant Deliverables"; readonly description?: string; - readonly image?: string; readonly index: number; } & BoxProps; @@ -22,89 +20,63 @@ const images = { "Grant Deliverables": "/assets/grant_deliverables.svg", }; export const DisplayCard = (props: Props) => { - const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${props.image}`; - const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; - return ( - - - + + + + + + + + - {props.image ? ( - - - - - - ) : ( - - - - - - )} - - - - {props.index} - - - {props.title} - - - {props.description} - + + {props.index} + + + {props.title} + + {props.description} - + ); diff --git a/workspaces/website/src/components/Card/ListCard.tsx b/workspaces/website/src/components/Card/ListCard.tsx index 789c8364af..0b9f0f92c2 100644 --- a/workspaces/website/src/components/Card/ListCard.tsx +++ b/workspaces/website/src/components/Card/ListCard.tsx @@ -31,6 +31,7 @@ type Props = { readonly location?: string; readonly image?: string; readonly href: string; + readonly changeLayout?: boolean; readonly city?: string; readonly country?: string; readonly twitter?: string; @@ -47,13 +48,11 @@ type Props = { export const ListCard = (props: Props) => { const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${props.image}`; - const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; - + const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; + return ( - + { borderRadius="16px" rounded={props.variant === "default" ? "8px" : "16px"} padding={"32px 24px"} - // borderWidth="1px" borderColor="card-br" - // shadow={{ md: "base" }} px={{ base: "6", md: "8" }} > { spacing={{ base: "3", md: "6" }} align="center" > - {props.image && - - - - } + {props.image && ( + + + + + + )} {props.startDateTime && ( {props.startDateTime} {props.city && ( @@ -109,70 +105,92 @@ export const ListCard = (props: Props) => { )} - {/* {props.city} */} {props.city && ` ${props.city}, `} {props.country && props.country} )} - - - {props.title} - - - {/* */} - - - - - {props.description} - - {/* {props.variant === "event" && ( - - - - )} */} + {props.changeLayout ? ( + <> + + {props.description} + + + + {props.title} + + + + + + + ) : ( + <> + + + {props.title} + + + + + + + + {props.description} + + + )} + {props.type_list ? ( {props.type_list.map((tag) => ( - + {tag.type !== "ios" ? titleCase(tag.type) : "iOS"} @@ -198,14 +216,12 @@ export const ListCard = (props: Props) => { ) )} - + {props.href && + !props.changeLayout && props.variant !== "event" && props.variant !== "job" && ( - + { )} {props.twitter && ( - + { )} {props.discord && ( - + Date: Thu, 2 May 2024 12:29:30 +0300 Subject: [PATCH 09/17] add grant to main menu in comuunity --- _data/settings/main-menu.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/_data/settings/main-menu.yml b/_data/settings/main-menu.yml index c972a4f464..35989205be 100644 --- a/_data/settings/main-menu.yml +++ b/_data/settings/main-menu.yml @@ -56,6 +56,8 @@ items: items: - custom_title: Community Hub page: 683db5f6-c625-4fe0-a2af-3c5b6af8c2c9 + - custom_title: Grant + custom_internal_link: /grant - title: GET INVOLVED items: - custom_internal_link: /events From 2ef3456b476a677a8ad4ab577cd68ddb1732a371 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 13:49:24 +0300 Subject: [PATCH 10/17] fixing ui --- _data/pages/grant.yml | 15 +++++++-------- _data/settings/main-menu.yml | 4 ++-- .../website/src/blocks/DisplayCardItems.tsx | 9 +++++++-- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 479d782acf..2587be894d 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -1,9 +1,7 @@ id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 title: Grant -template: content -hideToc: true -parent_page: "" -hidden_page: false +template: landing +parent_page: /ecosystem/ breadcrumbs: false page_last_updated: true blocks: @@ -61,11 +59,14 @@ blocks: lg: 1 md: 1 base: 1 + max_width: 1062 + - type: container + blocks: - type: flex_layout heading_variant: sm blocks: - - type: markdown - body: >- + - type: markdown + body: >- Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. Ineligible applications include anything related to: @@ -97,8 +98,6 @@ blocks: image: /assets/sn-symbol-gradient.png website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ ea0acb56c9f08&chainId=10&newTab=true " - - type: group - blocks: [] - type: container blocks: - type: accordion diff --git a/_data/settings/main-menu.yml b/_data/settings/main-menu.yml index 35989205be..63c47a254f 100644 --- a/_data/settings/main-menu.yml +++ b/_data/settings/main-menu.yml @@ -45,6 +45,8 @@ items: - page: 9308fd57-e090-4ca9-9581-d9aeb8a3187c - custom_title: Security & audits custom_internal_link: "" + - custom_title: Grants Program + custom_internal_link: ecosystem/grant page: af68f1f8-b2a3-49e2-bec0-f36165cc331f - custom_external_link: https://status.starknet.io/ custom_icon: "" @@ -56,8 +58,6 @@ items: items: - custom_title: Community Hub page: 683db5f6-c625-4fe0-a2af-3c5b6af8c2c9 - - custom_title: Grant - custom_internal_link: /grant - title: GET INVOLVED items: - custom_internal_link: /events diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index 3137dc7d4a..12014684d7 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -21,12 +21,16 @@ export default function DisplayCardItems({ return ( - + {title && ( @@ -44,6 +48,7 @@ export default function DisplayCardItems({ borderRadius="6px" fontSize={16} style={{ textDecoration: "none" }} + textAlign="center" > {button} → From 387e45748df3cfb2cedeb9de9fe463332a0106bf Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 15:48:18 +0300 Subject: [PATCH 11/17] fixing Icons on dark mode --- public/assets/application.svg | 60 +++++++++---------- public/assets/grant_deliverables.svg | 42 ++++++------- public/assets/internal_evaluation.svg | 26 ++++---- public/assets/onboarding.svg | 6 +- public/assets/results.svg | 10 ++-- .../website/src/blocks/DisplayCardItems.tsx | 1 + .../src/components/Card/DisplayCard.tsx | 25 +++++++- 7 files changed, 96 insertions(+), 74 deletions(-) diff --git a/public/assets/application.svg b/public/assets/application.svg index a0b7e27f4a..6a81cdd215 100644 --- a/public/assets/application.svg +++ b/public/assets/application.svg @@ -1,77 +1,77 @@ - - + stroke="currentColor" stroke-width="1.5" /> + + - + + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + d="M24.3378 42.559L23.125 41.2122L23.503 40.8722L24.7158 42.219L24.3378 42.559Z" fill="currentColor" /> + d="M24.347 47.4172L21.9215 44.993L22.2811 44.6336L24.7066 47.0578L24.347 47.4172Z" fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + d="M24.347 45.0375L26.7725 42.6133L27.1322 42.9728L24.7066 45.3969L24.347 45.0375Z" fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + d="M19.9585 44.8744L17.7972 46.2721L17.5209 45.8454L19.6822 44.4476L19.9585 44.8744Z" fill="currentColor" /> + d="M17.0372 46.7785L13.9859 48.8116L13.7038 48.3887L16.7551 46.3556L17.0372 46.7785Z" fill="currentColor" /> + d="M17.0372 37.5879L13.9859 35.5548L13.7038 35.9777L16.7551 38.0108L17.0372 37.5879Z" fill="currentColor" /> + d="M32.5203 46.6514L35.5717 48.6845L35.8538 48.2616L32.8024 46.2285L32.5203 46.6514Z" fill="currentColor" /> + d="M32.5203 37.715L35.5717 35.6819L35.8538 36.1048L32.8024 38.1379L32.5203 37.715Z" fill="currentColor" /> \ No newline at end of file diff --git a/public/assets/grant_deliverables.svg b/public/assets/grant_deliverables.svg index 12229e9dfa..bb7b8930d8 100644 --- a/public/assets/grant_deliverables.svg +++ b/public/assets/grant_deliverables.svg @@ -1,55 +1,55 @@ + fill="currentColor" /> + d="M39.1582 41.3386L35.4631 37.2351L36.6148 36.1991L40.31 40.3026L39.1582 41.3386Z" fill="currentColor" /> + d="M39.1863 56.1409L31.7959 48.7547L32.8916 47.6596L40.2819 55.0458L39.1863 56.1409Z" fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + d="M39.1863 48.8904L46.5766 41.5042L47.6722 42.5993L40.2819 49.9855L39.1863 48.8904Z" fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + d="M25.8151 48.3933L19.2297 52.652L18.3879 51.3519L24.9733 47.0931L25.8151 48.3933Z" fill="currentColor" /> + d="M16.9143 54.1949L7.61729 60.3894L6.75778 59.1009L16.0548 52.9063L16.9143 54.1949Z" fill="currentColor" /> + d="M16.9143 26.1923L7.61729 19.9977L6.75778 21.2863L16.0548 27.4808L16.9143 26.1923Z" fill="currentColor" /> + d="M64.0894 53.8077L73.3864 60.0023L74.2459 58.7137L64.9489 52.5192L64.0894 53.8077Z" fill="currentColor" /> + d="M64.0894 26.5795L73.3864 20.3849L74.2459 21.6735L64.9489 27.868L64.0894 26.5795Z" fill="currentColor" /> \ No newline at end of file diff --git a/public/assets/internal_evaluation.svg b/public/assets/internal_evaluation.svg index cd707d6fe7..966ba81da7 100644 --- a/public/assets/internal_evaluation.svg +++ b/public/assets/internal_evaluation.svg @@ -2,42 +2,42 @@ + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> - + + fill="currentColor" stroke="currentColor" stroke-width="0.5" /> + fill="currentColor" stroke="currentColor" stroke-width="0.5" /> + fill="currentColor" stroke="currentColor" stroke-width="0.5" /> diff --git a/public/assets/onboarding.svg b/public/assets/onboarding.svg index 6df0b286ff..daea474efa 100644 --- a/public/assets/onboarding.svg +++ b/public/assets/onboarding.svg @@ -1,11 +1,11 @@ + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> \ No newline at end of file diff --git a/public/assets/results.svg b/public/assets/results.svg index 0a5c113721..fbadd9492a 100644 --- a/public/assets/results.svg +++ b/public/assets/results.svg @@ -1,17 +1,17 @@ + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> + fill="currentColor" /> \ No newline at end of file diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index 12014684d7..dc0a72f1c6 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -43,6 +43,7 @@ export default function DisplayCardItems({ href={buttonLink} bgColor="#0C0C4F" color="white" + _dark={{ color: "#0C0C4F", bgColor: "white" }} padding={1} paddingInline={2} borderRadius="6px" diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index 12f1a04c38..d295203fc6 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -1,4 +1,12 @@ -import { Box, Stack, BoxProps, Img, Text, Circle } from "@chakra-ui/react"; +import { + Box, + Stack, + BoxProps, + Text, + Circle, + Img, + useColorMode, +} from "@chakra-ui/react"; import { Heading } from "@ui/Typography/Heading"; type Props = { @@ -19,7 +27,10 @@ const images = { Onboarding: "/assets/onboarding.svg", "Grant Deliverables": "/assets/grant_deliverables.svg", }; + export const DisplayCard = (props: Props) => { + const { colorMode } = useColorMode(); + return ( { padding={"32px 24px"} border="1px" borderColor="#EFEFEF" + _dark={{ borderColor: "transparent" }} px={{ base: "6", md: "8" }} > { src={images[props?.title]} title={props.title} objectFit="contain" + style={{ + filter: `invert(${colorMode === "light" ? 0 : 1})`, + }} /> @@ -61,11 +76,17 @@ export const DisplayCard = (props: Props) => { pb="4px" paddingTop="4px" > - + {props.index} Date: Thu, 2 May 2024 16:22:11 +0300 Subject: [PATCH 12/17] Update grant.yml --- _data/pages/grant.yml | 43 +++++++++++++++++-------------------------- 1 file changed, 17 insertions(+), 26 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 49cbf86aec..81d978ba99 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -1,9 +1,7 @@ id: 80c9a40d-ac4c-4bee-8c78-dd83667a1a97 title: Grant -template: content -hideToc: true -parent_page: "" -hidden_page: false +template: landing +parent_page: /ecosystem/ breadcrumbs: false page_last_updated: true blocks: @@ -45,7 +43,6 @@ blocks: promising results in building applications on Starknet, using any combination of the following criteria: - * Prior development experience on Starknet. * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. @@ -56,24 +53,23 @@ blocks: **All applicants will be required to provide a clear roadmap detailing how the grant will be used within the next three months.** + heading: Who Can Apply? xl: 1 lg: 1 md: 1 base: 1 + max_width: 1062 + - type: container + blocks: - type: flex_layout heading_variant: sm blocks: - - type: markdown - body: >- - - + - type: markdown + body: >- Projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. - - Ineligible applications include anything related to: - * Gambling * Drugs @@ -85,6 +81,7 @@ blocks: * Money laundering * Any criminal activity + heading: Who is Not Eligible base: 1 md: 1 @@ -96,14 +93,16 @@ blocks: title: Apply Now! card_list_items: - title: Seed Grant Program Application Form + changeLayout: true description: Application Form + image: /assets/sn-symbol-gradient.png website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ ea0acb56c9f08&chainId=10&newTab=true " - - type: group - blocks: [] - - type: accordion - heading: FAQs + - type: container blocks: + - type: accordion + heading: FAQs + blocks: - label: What is the Seed Grants Program? body: "* The Seed Grants Program offers teams developing on Starknet grants of up to $25,000 to foster the growth of the Starknet ecosystem" @@ -112,20 +111,11 @@ blocks: The grants will be awarded to individuals and teams demonstrating promising results in building applications on Starknet, using any combination of the following criteria: - - * Prior development experience on Starknet. - * Active involvement in the Starknet community, indicated by participation in a Starknet hackathon, builder program, or another entry-level initiative. - * Willing to submit a demo or links to a proof of concept or MVP. - * Planning on using or building upon existing Starknet tools and integrations. - - All applicants will be required to provide an explanation detailing how the grant will be used within the next three months. - - Please note that projects currently affiliated with the Starknet Foundation’s Developer Partnership are not eligible to participate in the Seed Grants Program. - label: What currency are grants paid in? body: Grants are paid out in USDC. @@ -144,7 +134,7 @@ blocks: - label: Will I hear back if my request is rejected? body: Yes — you will hear back if your application is not accepted. - label: Are there application deadlines? - body: No – you can apply for Seed Grants on an ongoing basis.  Applications will + body: No – you can apply for Seed Grants on an ongoing basis. Applications will be reviewed in rounds. - label: How can I apply for a grant? body: Please apply via this link, where you will be asked to fill out several @@ -154,3 +144,4 @@ blocks: Foundation and Starkware team, focusing on factors such as impact, innovation, community engagement, track record, and other relevant criteria. + max_width: 1062 From dd0bbc40081dc946004beed432880f4640243204 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 17:49:39 +0300 Subject: [PATCH 13/17] fix comments --- _data/pages/grant.yml | 2 +- public/assets/application.svg | 60 +++--- public/assets/grant_deliverables.svg | 42 ++-- public/assets/internal_evaluation.svg | 26 +-- public/assets/onboarding.svg | 6 +- public/assets/results.svg | 10 +- workspaces/cms-config/src/blocks.ts | 4 +- workspaces/cms-data/src/pages.ts | 2 +- .../website/src/blocks/DisplayCardItems.tsx | 11 +- .../src/components/Card/DisplayCard.tsx | 4 +- .../website/src/components/Card/ListCard.tsx | 184 ++++++++---------- 11 files changed, 164 insertions(+), 187 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 81d978ba99..cbb4f38d58 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -93,7 +93,7 @@ blocks: title: Apply Now! card_list_items: - title: Seed Grant Program Application Form - changeLayout: true + reverse: true description: Application Form image: /assets/sn-symbol-gradient.png website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ diff --git a/public/assets/application.svg b/public/assets/application.svg index 6a81cdd215..a0b7e27f4a 100644 --- a/public/assets/application.svg +++ b/public/assets/application.svg @@ -1,77 +1,77 @@ - - + stroke="#0C0C4F" stroke-width="1.5" /> + + - + + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + d="M24.3378 42.559L23.125 41.2122L23.503 40.8722L24.7158 42.219L24.3378 42.559Z" fill="#0C0C4F" /> + d="M24.347 47.4172L21.9215 44.993L22.2811 44.6336L24.7066 47.0578L24.347 47.4172Z" fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + d="M24.347 45.0375L26.7725 42.6133L27.1322 42.9728L24.7066 45.3969L24.347 45.0375Z" fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + d="M19.9585 44.8744L17.7972 46.2721L17.5209 45.8454L19.6822 44.4476L19.9585 44.8744Z" fill="#0C0C4F" /> + d="M17.0372 46.7785L13.9859 48.8116L13.7038 48.3887L16.7551 46.3556L17.0372 46.7785Z" fill="#0C0C4F" /> + d="M17.0372 37.5879L13.9859 35.5548L13.7038 35.9777L16.7551 38.0108L17.0372 37.5879Z" fill="#0C0C4F" /> + d="M32.5203 46.6514L35.5717 48.6845L35.8538 48.2616L32.8024 46.2285L32.5203 46.6514Z" fill="#0C0C4F" /> + d="M32.5203 37.715L35.5717 35.6819L35.8538 36.1048L32.8024 38.1379L32.5203 37.715Z" fill="#0C0C4F" /> \ No newline at end of file diff --git a/public/assets/grant_deliverables.svg b/public/assets/grant_deliverables.svg index bb7b8930d8..12229e9dfa 100644 --- a/public/assets/grant_deliverables.svg +++ b/public/assets/grant_deliverables.svg @@ -1,55 +1,55 @@ + fill="#0C0C4F" /> + d="M39.1582 41.3386L35.4631 37.2351L36.6148 36.1991L40.31 40.3026L39.1582 41.3386Z" fill="#0C0C4F" /> + d="M39.1863 56.1409L31.7959 48.7547L32.8916 47.6596L40.2819 55.0458L39.1863 56.1409Z" fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + d="M39.1863 48.8904L46.5766 41.5042L47.6722 42.5993L40.2819 49.9855L39.1863 48.8904Z" fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + d="M25.8151 48.3933L19.2297 52.652L18.3879 51.3519L24.9733 47.0931L25.8151 48.3933Z" fill="#0C0C4F" /> + d="M16.9143 54.1949L7.61729 60.3894L6.75778 59.1009L16.0548 52.9063L16.9143 54.1949Z" fill="#0C0C4F" /> + d="M16.9143 26.1923L7.61729 19.9977L6.75778 21.2863L16.0548 27.4808L16.9143 26.1923Z" fill="#0C0C4F" /> + d="M64.0894 53.8077L73.3864 60.0023L74.2459 58.7137L64.9489 52.5192L64.0894 53.8077Z" fill="#0C0C4F" /> + d="M64.0894 26.5795L73.3864 20.3849L74.2459 21.6735L64.9489 27.868L64.0894 26.5795Z" fill="#0C0C4F" /> \ No newline at end of file diff --git a/public/assets/internal_evaluation.svg b/public/assets/internal_evaluation.svg index 966ba81da7..cd707d6fe7 100644 --- a/public/assets/internal_evaluation.svg +++ b/public/assets/internal_evaluation.svg @@ -2,42 +2,42 @@ + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> - + + fill="#0C0C4F" stroke="#0C0C4F" stroke-width="0.5" /> + fill="#0C0C4F" stroke="#0C0C4F" stroke-width="0.5" /> + fill="#0C0C4F" stroke="#0C0C4F" stroke-width="0.5" /> diff --git a/public/assets/onboarding.svg b/public/assets/onboarding.svg index daea474efa..6df0b286ff 100644 --- a/public/assets/onboarding.svg +++ b/public/assets/onboarding.svg @@ -1,11 +1,11 @@ + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> \ No newline at end of file diff --git a/public/assets/results.svg b/public/assets/results.svg index fbadd9492a..0a5c113721 100644 --- a/public/assets/results.svg +++ b/public/assets/results.svg @@ -1,17 +1,17 @@ + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> + fill="#0C0C4F" /> \ No newline at end of file diff --git a/workspaces/cms-config/src/blocks.ts b/workspaces/cms-config/src/blocks.ts index c2dc054966..58b3b15b73 100644 --- a/workspaces/cms-config/src/blocks.ts +++ b/workspaces/cms-config/src/blocks.ts @@ -517,8 +517,8 @@ export const blocks = [ crowdin: true, }, { - label: "changeLayout", - name: "changeLayout", + label: "reverse", + name: "reverse", required: false, widget: "boolean", crowdin: true, diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index 79a38dae3b..fdadec868c 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -58,7 +58,7 @@ export interface ListCardItems { start_date_time: string; location: string; city: string; - changeLayout: boolean; + reverse: boolean; discord: string; type_list: { type: string; diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index dc0a72f1c6..019690ed4a 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -1,4 +1,4 @@ -import { Box, Flex, Container, LinkBox, Link } from "@chakra-ui/react"; +import { Box, Flex, Container, LinkBox, Link, List } from "@chakra-ui/react"; import { Heading } from "@ui/Typography/Heading"; import { slugify } from "@starknet-io/cms-utils/src/index"; import type { DisplayCardItems } from "@starknet-io/cms-data/src/pages"; @@ -44,8 +44,9 @@ export default function DisplayCardItems({ bgColor="#0C0C4F" color="white" _dark={{ color: "#0C0C4F", bgColor: "white" }} - padding={1} - paddingInline={2} + padding={2} + fontWeight={600} + paddingInline={6} borderRadius="6px" fontSize={16} style={{ textDecoration: "none" }} @@ -55,7 +56,7 @@ export default function DisplayCardItems({ )} - + {card_display_items?.map(({ title, description }, i) => { return ( ); })} - + ); diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index d295203fc6..c10e6f041c 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -32,7 +32,7 @@ export const DisplayCard = (props: Props) => { const { colorMode } = useColorMode(); return ( - + { title={props.title} objectFit="contain" style={{ - filter: `invert(${colorMode === "light" ? 0 : 1})`, + filter: `invert(color:${colorMode === "light" ? 0 : 1})`, }} /> diff --git a/workspaces/website/src/components/Card/ListCard.tsx b/workspaces/website/src/components/Card/ListCard.tsx index 0b9f0f92c2..6d883fdeb8 100644 --- a/workspaces/website/src/components/Card/ListCard.tsx +++ b/workspaces/website/src/components/Card/ListCard.tsx @@ -10,6 +10,7 @@ import { Img, LinkBox, LinkOverlay, + Flex, } from "@chakra-ui/react"; import { Heading } from "@ui/Typography/Heading"; import { Text } from "@ui/Typography/Text"; @@ -31,7 +32,7 @@ type Props = { readonly location?: string; readonly image?: string; readonly href: string; - readonly changeLayout?: boolean; + readonly reverse?: boolean; readonly city?: string; readonly country?: string; readonly twitter?: string; @@ -46,8 +47,24 @@ type Props = { }; } & BoxProps; -export const ListCard = (props: Props) => { - const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${props.image}`; +export const ListCard = ({ + reverse = false, + title, + startDateTime, + description, + location, + image, + href, + city, + country, + twitter, + discord, + variant, + type_list, + type, + recap, +}: Props) => { + const cloudflareImage = `https://www.starknet.io/cdn-cgi/image/width=80px,height=auto,format=auto${image}`; const isProd = import.meta.env.VITE_ALGOLIA_INDEX === "production"; return ( @@ -59,7 +76,7 @@ export const ListCard = (props: Props) => { mx="auto" bg="card-bg" borderRadius="16px" - rounded={props.variant === "default" ? "8px" : "16px"} + rounded={variant === "default" ? "8px" : "16px"} padding={"32px 24px"} borderColor="card-br" px={{ base: "6", md: "8" }} @@ -69,7 +86,7 @@ export const ListCard = (props: Props) => { spacing={{ base: "3", md: "6" }} align="center" > - {props.image && ( + {image && ( { )} - {props.startDateTime && ( + {startDateTime && ( { flexDirection={{ base: "row", md: "row" }} alignItems={{ base: "flex-start", md: "center" }} > - {props.startDateTime} - {props.city && ( + {startDateTime} + {city && ( · @@ -110,86 +127,47 @@ export const ListCard = (props: Props) => { color="list-card-sm-title-fg" as="span" > - {props.city && ` ${props.city}, `} - {props.country && props.country} + {city && ` ${city}, `} + {country && country} )} - - {props.changeLayout ? ( - <> - - {props.description} - - - - {props.title} - - - - - - - ) : ( - <> - - - {props.title} - - - - - - - + + {description} + + + - {props.description} - - - )} - - {props.type_list ? ( + {title} + + + + + + + {type_list ? ( - {props.type_list.map((tag) => ( + {type_list.map((tag) => ( {tag.type !== "ios" ? titleCase(tag.type) : "iOS"} @@ -198,14 +176,12 @@ export const ListCard = (props: Props) => { ))} ) : ( - props.type && ( + type && ( - {props.location && ( - - {titleCase(props.location)} - + {location && ( + {titleCase(location)} )} - {props.type + {type .filter((element) => element !== "") .map((tag) => ( @@ -217,11 +193,11 @@ export const ListCard = (props: Props) => { )} - {props.href && - !props.changeLayout && - props.variant !== "event" && - props.variant !== "job" && ( - + {href && + !reverse && + variant !== "event" && + variant !== "job" && ( + { /> )} - {props.twitter && ( - + {twitter && ( + { /> )} - {props.discord && ( - + {discord && ( + { )} - {props.recap?.link && ( + {recap?.link && ( )} From 3b515039400d5277ed4ecefd02f21c2863bbb936 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 18:16:51 +0300 Subject: [PATCH 14/17] fixing props and layout --- _data/pages/grant.yml | 3 +- workspaces/cms-config/src/blocks.ts | 7 + workspaces/cms-data/src/pages.ts | 3 +- .../website/src/blocks/ListCardItems.tsx | 65 +++++--- .../website/src/components/Card/ListCard.tsx | 153 +++++++++--------- 5 files changed, 129 insertions(+), 102 deletions(-) diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index cbb4f38d58..8a6e100a93 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -91,9 +91,10 @@ blocks: - type: card_list randomize: false title: Apply Now! + reverse: true + showIcons: false card_list_items: - title: Seed Grant Program Application Form - reverse: true description: Application Form image: /assets/sn-symbol-gradient.png website_url: "https://starknet.questbook.app/proposal_form/?grantId=661667585af\ diff --git a/workspaces/cms-config/src/blocks.ts b/workspaces/cms-config/src/blocks.ts index 58b3b15b73..bb2be972b8 100644 --- a/workspaces/cms-config/src/blocks.ts +++ b/workspaces/cms-config/src/blocks.ts @@ -523,6 +523,13 @@ export const blocks = [ widget: "boolean", crowdin: true, }, + { + label: "show icons", + name: "showIcons", + required: false, + widget: "boolean", + crowdin: true, + }, { name: "randomize", label: "Randomize", diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index fdadec868c..0b6be11488 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -58,7 +58,6 @@ export interface ListCardItems { start_date_time: string; location: string; city: string; - reverse: boolean; discord: string; type_list: { type: string; @@ -85,6 +84,8 @@ export interface ListCardItemsBlock { readonly noOfItems: number; readonly description: string; randomize?: boolean; + reverse?: boolean; + showIcons?: boolean; } export interface DisplayCardItemsBlock { readonly type: "card_display"; diff --git a/workspaces/website/src/blocks/ListCardItems.tsx b/workspaces/website/src/blocks/ListCardItems.tsx index b87a26f02e..551b2c7cad 100644 --- a/workspaces/website/src/blocks/ListCardItems.tsx +++ b/workspaces/website/src/blocks/ListCardItems.tsx @@ -6,41 +6,56 @@ import { slugify } from "@starknet-io/cms-utils/src/index"; import type { ListCardItems } from "@starknet-io/cms-data/src/pages"; interface Props extends LocaleProps { - title: string, - description?: string, - card_list_items: ListCardItems[], - randomize?: boolean + title: string; + description?: string; + reverse?: boolean; + showIcons?: boolean; + card_list_items: ListCardItems[]; + randomize?: boolean; } export default function ListCardItems({ params: { locale }, title, description, - card_list_items -}: -Props): JSX.Element { + reverse, + showIcons, + card_list_items, +}: Props): JSX.Element { return ( - {title && {title}} - {description && {description}} + {title && ( + + {title} + + )} + {description && ( + + {description} + + )} - {card_list_items?.map(({ - start_date_time, - type, - website_url, - ...card - }, i) => { - return ( - - ); - })} + {card_list_items?.map( + ({ start_date_time, type, website_url, ...card }, i) => { + return ( + + ); + } + )} diff --git a/workspaces/website/src/components/Card/ListCard.tsx b/workspaces/website/src/components/Card/ListCard.tsx index 6d883fdeb8..01cdb68f96 100644 --- a/workspaces/website/src/components/Card/ListCard.tsx +++ b/workspaces/website/src/components/Card/ListCard.tsx @@ -33,6 +33,7 @@ type Props = { readonly image?: string; readonly href: string; readonly reverse?: boolean; + readonly showIcons?: boolean; readonly city?: string; readonly country?: string; readonly twitter?: string; @@ -49,6 +50,7 @@ type Props = { export const ListCard = ({ reverse = false, + showIcons = true, title, startDateTime, description, @@ -133,15 +135,6 @@ export const ListCard = ({ )} - - {description} - + + {description} + - {type_list ? ( - - {type_list.map((tag) => ( - - - {tag.type !== "ios" ? titleCase(tag.type) : "iOS"} - - - ))} - - ) : ( - type && ( - - {location && ( - {titleCase(location)} - )} - {type - .filter((element) => element !== "") - .map((tag) => ( - - {titleCase(tag)} - + {showIcons && ( + <> + {type_list ? ( + + {type_list.map((tag) => ( + + + {tag.type !== "ios" ? titleCase(tag.type) : "iOS"} + + ))} - - ) - )} + + ) : ( + type && ( + + {location && ( + {titleCase(location)} + )} + {type + .filter((element) => element !== "") + .map((tag) => ( + + {titleCase(tag)} + + ))} + + ) + )} - - {href && - !reverse && - variant !== "event" && - variant !== "job" && ( - - - + + {href && variant !== "event" && variant !== "job" && ( + + + + )} + {twitter && ( + + + + )} + {discord && ( + + + + )} + + {recap?.link && ( + )} - {twitter && ( - - - - )} - {discord && ( - - - - )} - - {recap?.link && ( - + )} From 95b23edbaaa123bcce265ce7ec39d72a5b511d33 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Thu, 2 May 2024 18:45:32 +0300 Subject: [PATCH 15/17] editing icons --- public/assets/internal_evaluation.svg | 47 ---- .../src/components/Card/DisplayCard.tsx | 40 ++-- .../Icons/DisplayCardIcons/Application.tsx | 218 +++++++++++++----- .../DisplayCardIcons/GrantDeliverables.tsx | 134 +++++++++++ .../DisplayCardIcons/InternalEvaluation.tsx | 96 ++++++++ .../Icons/DisplayCardIcons/Onboarding.tsx | 37 ++- .../Icons/DisplayCardIcons/Results.tsx | 47 +++- 7 files changed, 466 insertions(+), 153 deletions(-) delete mode 100644 public/assets/internal_evaluation.svg rename public/assets/application.svg => workspaces/website/src/components/Icons/DisplayCardIcons/Application.tsx (64%) create mode 100644 workspaces/website/src/components/Icons/DisplayCardIcons/GrantDeliverables.tsx create mode 100644 workspaces/website/src/components/Icons/DisplayCardIcons/InternalEvaluation.tsx rename public/assets/onboarding.svg => workspaces/website/src/components/Icons/DisplayCardIcons/Onboarding.tsx (94%) rename public/assets/results.svg => workspaces/website/src/components/Icons/DisplayCardIcons/Results.tsx (76%) diff --git a/public/assets/internal_evaluation.svg b/public/assets/internal_evaluation.svg deleted file mode 100644 index cd707d6fe7..0000000000 --- a/public/assets/internal_evaluation.svg +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index c10e6f041c..8a5e61ac9a 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -1,12 +1,9 @@ -import { - Box, - Stack, - BoxProps, - Text, - Circle, - Img, - useColorMode, -} from "@chakra-ui/react"; +import { Box, Stack, BoxProps, Text, Circle } from "@chakra-ui/react"; +import { Application } from "@ui/Icons/DisplayCardIcons/Application"; +import { GrantDeliverables } from "@ui/Icons/DisplayCardIcons/GrantDeliverables"; +import { InternalEvaluation } from "@ui/Icons/DisplayCardIcons/InternalEvaluation"; +import { Onboarding } from "@ui/Icons/DisplayCardIcons/Onboarding"; +import { Results } from "@ui/Icons/DisplayCardIcons/Results"; import { Heading } from "@ui/Typography/Heading"; type Props = { @@ -21,16 +18,14 @@ type Props = { } & BoxProps; const images = { - Application: "/assets/application.svg", - "Internal Evaluation": "/assets/internal_evaluation.svg", - Results: "/assets/results.svg", - Onboarding: "/assets/onboarding.svg", - "Grant Deliverables": "/assets/grant_deliverables.svg", + Application: , + "Internal Evaluation": , + Results: , + Onboarding: , + "Grant Deliverables": , }; export const DisplayCard = (props: Props) => { - const { colorMode } = useColorMode(); - return ( { height="80px" borderRadius="8px" overflow="hidden" + color="#0C0C4F" + _dark={{ color: "white" }} marginBottom={{ base: "16px", md: "0" }} > - + {images[props?.title]} diff --git a/public/assets/application.svg b/workspaces/website/src/components/Icons/DisplayCardIcons/Application.tsx similarity index 64% rename from public/assets/application.svg rename to workspaces/website/src/components/Icons/DisplayCardIcons/Application.tsx index a0b7e27f4a..06ef3d2345 100644 --- a/public/assets/application.svg +++ b/workspaces/website/src/components/Icons/DisplayCardIcons/Application.tsx @@ -1,77 +1,175 @@ - - ; + +export const Application = ({}: Props) => { + return ( + + - - - + + + - - + + - + - + - + - - - - + + + + - + - - + + - + - + - + - + - + - - + + - + - + - - - - - - \ No newline at end of file + fill="currentColor" + /> + + + + + + + ); +}; diff --git a/workspaces/website/src/components/Icons/DisplayCardIcons/GrantDeliverables.tsx b/workspaces/website/src/components/Icons/DisplayCardIcons/GrantDeliverables.tsx new file mode 100644 index 0000000000..b7aa776d24 --- /dev/null +++ b/workspaces/website/src/components/Icons/DisplayCardIcons/GrantDeliverables.tsx @@ -0,0 +1,134 @@ +import { HTMLChakraProps } from "@chakra-ui/react"; + +type Props = HTMLChakraProps<"svg">; + +export const GrantDeliverables = ({}: Props) => { + return ( + + + + + + + + + + + + + + + + + + + + + + + + ); +}; diff --git a/workspaces/website/src/components/Icons/DisplayCardIcons/InternalEvaluation.tsx b/workspaces/website/src/components/Icons/DisplayCardIcons/InternalEvaluation.tsx new file mode 100644 index 0000000000..ccfa9cfe22 --- /dev/null +++ b/workspaces/website/src/components/Icons/DisplayCardIcons/InternalEvaluation.tsx @@ -0,0 +1,96 @@ +import { HTMLChakraProps } from "@chakra-ui/react"; + +type Props = HTMLChakraProps<"svg">; + +export const InternalEvaluation = ({}: Props) => { + return ( + + + + + + + + + + + + + + + + + + + + + + + ); +}; diff --git a/public/assets/onboarding.svg b/workspaces/website/src/components/Icons/DisplayCardIcons/Onboarding.tsx similarity index 94% rename from public/assets/onboarding.svg rename to workspaces/website/src/components/Icons/DisplayCardIcons/Onboarding.tsx index 6df0b286ff..396f64bb6d 100644 --- a/public/assets/onboarding.svg +++ b/workspaces/website/src/components/Icons/DisplayCardIcons/Onboarding.tsx @@ -1,11 +1,32 @@ - - ; + +export const Onboarding = ({}: Props) => { + return ( + + - + - + - \ No newline at end of file + fill="currentColor" + /> + + ); +}; diff --git a/public/assets/results.svg b/workspaces/website/src/components/Icons/DisplayCardIcons/Results.tsx similarity index 76% rename from public/assets/results.svg rename to workspaces/website/src/components/Icons/DisplayCardIcons/Results.tsx index 0a5c113721..574d36273d 100644 --- a/public/assets/results.svg +++ b/workspaces/website/src/components/Icons/DisplayCardIcons/Results.tsx @@ -1,17 +1,40 @@ - - ; + +export const Results = ({}: Props) => { + return ( + + - + - + - + - + - \ No newline at end of file + fill="currentColor" + /> + + ); +}; From 524a2d3a4f77b6c21ba12ac5b8ca7265c82a2f30 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Sun, 5 May 2024 10:33:33 +0300 Subject: [PATCH 16/17] fixing all comments --- _data/pages/grant.yml | 1 + public/assets/grant_deliverables.svg | 55 --------- workspaces/cms-config/src/blocks.ts | 6 + workspaces/cms-data/src/pages.ts | 1 + workspaces/website/src/blocks/Block.tsx | 1 + .../website/src/blocks/DisplayCardItems.tsx | 3 +- .../website/src/blocks/ListCardItems.tsx | 2 +- .../src/components/Card/DisplayCard.tsx | 114 +++++++++--------- .../src/components/HeroImage/HeroImage.tsx | 5 + 9 files changed, 74 insertions(+), 114 deletions(-) delete mode 100644 public/assets/grant_deliverables.svg diff --git a/_data/pages/grant.yml b/_data/pages/grant.yml index 8a6e100a93..a272b0bb02 100644 --- a/_data/pages/grant.yml +++ b/_data/pages/grant.yml @@ -10,6 +10,7 @@ blocks: buttonUrl: "" title: Seed Grant Program description: "" + darkTextColor: true - type: card_display title: Application Process button: Apply Now diff --git a/public/assets/grant_deliverables.svg b/public/assets/grant_deliverables.svg deleted file mode 100644 index 12229e9dfa..0000000000 --- a/public/assets/grant_deliverables.svg +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/workspaces/cms-config/src/blocks.ts b/workspaces/cms-config/src/blocks.ts index bb2be972b8..19a2832dcc 100644 --- a/workspaces/cms-config/src/blocks.ts +++ b/workspaces/cms-config/src/blocks.ts @@ -597,6 +597,12 @@ export const blocks = [ widget: "string", crowdin: true, }, + { + name: "darkTextColor", + widget: "boolean", + required: false, + crowdin: true, + }, { name: "description", widget: "string", diff --git a/workspaces/cms-data/src/pages.ts b/workspaces/cms-data/src/pages.ts index 0b6be11488..2e19aef0cd 100644 --- a/workspaces/cms-data/src/pages.ts +++ b/workspaces/cms-data/src/pages.ts @@ -137,6 +137,7 @@ export interface PageHeaderBlock { export interface HeroBlock { readonly type: "hero"; + readonly darkTextColor?: boolean; readonly title: string; readonly description: string; readonly variant?: diff --git a/workspaces/website/src/blocks/Block.tsx b/workspaces/website/src/blocks/Block.tsx index ef6bfdbac2..5a795449b1 100644 --- a/workspaces/website/src/blocks/Block.tsx +++ b/workspaces/website/src/blocks/Block.tsx @@ -169,6 +169,7 @@ export function Block({ buttonText={block.buttonText} buttonUrl={block.buttonUrl} leftBoxMaxWidth={block.leftBoxMaxWidth} + darkTextColor={block.darkTextColor} /> ); diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index 019690ed4a..0bf24336b3 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -30,6 +30,7 @@ export default function DisplayCardItems({ diff --git a/workspaces/website/src/blocks/ListCardItems.tsx b/workspaces/website/src/blocks/ListCardItems.tsx index 551b2c7cad..da498b1688 100644 --- a/workspaces/website/src/blocks/ListCardItems.tsx +++ b/workspaces/website/src/blocks/ListCardItems.tsx @@ -29,7 +29,7 @@ export default function ListCardItems({ {title} diff --git a/workspaces/website/src/components/Card/DisplayCard.tsx b/workspaces/website/src/components/Card/DisplayCard.tsx index 8a5e61ac9a..10dcc5a424 100644 --- a/workspaces/website/src/components/Card/DisplayCard.tsx +++ b/workspaces/website/src/components/Card/DisplayCard.tsx @@ -27,66 +27,66 @@ const images = { export const DisplayCard = (props: Props) => { return ( - - + - - - - {images[props?.title]} - - - - - - {props.index} - - - {props.title} - - - {props.description} + + + {images[props?.title]} - + + + + {props.index} + + + {props.title} + + + {props.description} + + ); }; diff --git a/workspaces/website/src/components/HeroImage/HeroImage.tsx b/workspaces/website/src/components/HeroImage/HeroImage.tsx index 846f67f953..56174fc333 100644 --- a/workspaces/website/src/components/HeroImage/HeroImage.tsx +++ b/workspaces/website/src/components/HeroImage/HeroImage.tsx @@ -16,6 +16,7 @@ import React from "react"; type Props = { title: string; description: string | React.ReactNode; + darkTextColor?: boolean; variant?: | "wallets" | "block_explorers" @@ -140,6 +141,7 @@ export const HeroImage = ({ buttonUrl, onButtonClick, leftBoxMaxWidth, + darkTextColor = false, }: Props) => { return ( {title} From 05362b1757b50b756cf4cf9632ebd825306b3396 Mon Sep 17 00:00:00 2001 From: Tal-Ben-Avi Date: Sun, 5 May 2024 13:10:25 +0300 Subject: [PATCH 17/17] add hover on cta icon --- workspaces/website/src/blocks/DisplayCardItems.tsx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/workspaces/website/src/blocks/DisplayCardItems.tsx b/workspaces/website/src/blocks/DisplayCardItems.tsx index 0bf24336b3..ac98267c1e 100644 --- a/workspaces/website/src/blocks/DisplayCardItems.tsx +++ b/workspaces/website/src/blocks/DisplayCardItems.tsx @@ -44,12 +44,26 @@ export default function DisplayCardItems({ href={buttonLink} bgColor="#0C0C4F" color="white" + border="1px" + cursor="pointer" _dark={{ color: "#0C0C4F", bgColor: "white" }} + _hover={{ + color: "#0C0C4F", + bgColor: "white", + border: "1px", + borderColor: "#0C0C4F", + _dark: { + color: "white", + bgColor: "#0C0C4F", + borderColor: "white", + }, + }} padding={2} fontWeight={600} paddingInline={6} borderRadius="6px" fontSize={18} + target="_blank" style={{ textDecoration: "none" }} textAlign="center" >