diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 9b66d6799..1cf75a8be 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -74,6 +74,11 @@ const config = { label: 'Extensions', position: 'right' }, + { + to: 'community', + label: 'Community', + position: 'right' + }, { href: 'https://github.com/farfetch/kafkaflow', label: 'GitHub', diff --git a/website/src/components/Community/Resource/Index.js b/website/src/components/Community/Resource/Index.js new file mode 100644 index 000000000..2b2fb684b --- /dev/null +++ b/website/src/components/Community/Resource/Index.js @@ -0,0 +1,37 @@ +import React from "react"; + +export function Resource({ title, description, link, type, date, authors }) { + return ( +
+
+
+

+ {type}: {title} +

+
+
+

+ + By: + {authors.map(({ name, url }, index) => ( + <> + {index ? ", " : ""} + + {name} + + + ))} +
+ {date} +
+

+ {description ?

{description}

: <>} +

+ + {link} + +
+
+
+ ); +} diff --git a/website/src/pages/community/index.js b/website/src/pages/community/index.js new file mode 100644 index 000000000..20f7d25e4 --- /dev/null +++ b/website/src/pages/community/index.js @@ -0,0 +1,146 @@ +import React from "react"; +import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; +import Layout from "@theme/Layout"; +import { Resource } from "../../components/Community/Resource/Index"; + +const resources = [ + { + title: + "[PORTUGUESE] KafkaFlow, An open-source Kafka framework for .NET : Live Demo", + description: null, + link: "https://www.youtube.com/watch?v=XJCoI38KK7o", + type: "Talk", + date: "2021-12-15", + authors: [ + { + name: "Filipe Esch", + url: "https://github.com/filipeesch", + }, + ], + }, + { + title: "A BETTER Way to Kafka Event Diven Applications with C#", + description: null, + link: "https://www.youtube.com/watch?v=4e18DZkf-m0", + type: "Video", + date: "2023-01-24", + authors: [ + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, + { + title: + "Apache Kafka in 1 hour for C# Developers - Guilherme Ferreira - NDC London 2023", + description: null, + link: "https://www.youtube.com/watch?v=4xpjlqIlfY8", + type: "Talk", + date: "2023-05-20", + authors: [ + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, + { + title: "3 KafkaFlow Features Hard to Ignore", + description: null, + link: "https://www.youtube.com/watch?v=v-aFkzlBVpE", + type: "Video", + date: "2023-06-20", + authors: [ + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, + { + title: "How KafkaFlow Supercharged FARFETCH's Event-Driven Architecture", + description: null, + link: "https://www.farfetchtechblog.com/en/blog/post/how-kafkaflow-supercharged-farfetch-s-event-driven-architecture/", + type: "Article", + date: "2023-08-25", + authors: [ + { + name: "Filipe Esch", + url: "https://github.com/filipeesch", + }, + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, + { + title: "Building Kafka Event-Driven Applications with KafkaFlow", + description: null, + link: "https://www.infoq.com/articles/kafkaflow-dotnet-framework/", + type: "Article", + date: "2023-09-08", + authors: [ + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, + { + title: + "Apache Kafka in 1 hour for C# Developers - Guilherme Ferreira - Copenhagen DevFest 2023", + description: null, + link: "https://www.youtube.com/watch?v=E07CGvGVal8", + type: "Talk", + date: "2023-11-08", + authors: [ + { + name: "Gui Ferreira", + url: "https://guiferreira.me", + }, + ], + }, +]; + +export default function Community() { + const { siteConfig } = useDocusaurusContext(); + + return ( + +
+
+
+
+
+

Community

+

Resources built by the community.

+ + +
+
+ {resources.map((props, idx) => ( + + ))} +
+
+
+
+
+
+
+
+ ); +}