From 3ef52e5915f1996a885c0c522ac5d066d49fd425 Mon Sep 17 00:00:00 2001 From: adb-sh Date: Tue, 28 May 2024 14:14:49 +0200 Subject: [PATCH] Add content --- src/components/Nav.tsx | 208 ++++++++++++++++++++++++++----------- src/routes/[...404].tsx | 3 +- src/routes/association.mdx | 26 +++++ src/routes/index.mdx | 69 +++++++++--- src/routes/network.mdx | 10 +- src/routes/news/[slug].tsx | 12 ++- src/routes/news/index.tsx | 37 +++++-- src/routes/peering.mdx | 5 +- 8 files changed, 277 insertions(+), 93 deletions(-) create mode 100644 src/routes/association.mdx diff --git a/src/components/Nav.tsx b/src/components/Nav.tsx index c15b257..612cf62 100644 --- a/src/components/Nav.tsx +++ b/src/components/Nav.tsx @@ -1,5 +1,5 @@ -import { useLocation } from "@solidjs/router"; -import { A } from "@solidjs/router"; +import { useLocation, A } from "@solidjs/router"; +import { For } from "solid-js"; export default function Nav() { const location = useLocation(); @@ -7,66 +7,158 @@ export default function Nav() { path == location.pathname ? "border-sky-600" : "border-transparent hover:border-sky-600"; + + const menuItems = [ + { + name: "News", + link: "/news", + }, + { + name: "Network", + link: "/network", + }, + { + name: "Peering", + link: "/peering", + }, + { + name: "Association", + link: "/association", + }, + // { + // name: "Stats", + // link: "/statistics", + // }, + ]; return ( -
-
+ {/* Content */} + +
+ +
- + + //
+ // + //
); } diff --git a/src/routes/[...404].tsx b/src/routes/[...404].tsx index ee53609..eaa57a2 100644 --- a/src/routes/[...404].tsx +++ b/src/routes/[...404].tsx @@ -3,7 +3,8 @@ import { A } from "@solidjs/router"; export default function NotFound() { return (
-

Not Found :/

+

Not Found :/

+ Go to home
); } diff --git a/src/routes/association.mdx b/src/routes/association.mdx new file mode 100644 index 0000000..55e943d --- /dev/null +++ b/src/routes/association.mdx @@ -0,0 +1,26 @@ +
+
+

Association

+ +## Our Vision +We want to promote Saxony as an attractive IT location with a focus on Dresden. Our main focus is the further expansion of the internet communication network. We committ as non-profit organisation. + +### Operation of DD-IX + +In addition to supporting the community, we run the internet exchange DD-IX at locations in Dresden. DD-IX sees itself as an open, non-profit platform for all internet participants with a AS in the region of Saxony. + +Besides the peering LAN and our route servers for the core operation of the IXP, we run most of the systems of the association ourselves. + +### Networking and Sharing Experiences +We are a reliable point of contact for organizations, science, business, and the public on issues relating to the internet. In addition to the exchange of experiences within the association and with external third parties, we conduct information and training events. Furthermore, we participate in community events. + +## Association Work +The association is made up of committed members who work voluntarily for the achievement of the goals. Even though the association seems to be technical through IXP operations we are also involved in non-technical areas. + +## Participation & Joining +Are you interested in working for the association? We are looking forward to you! + +You do not have to be a member of the association to participate. But as a full member you have your own voting rights in the corresponding boards of the association. All legal documents of the association are linked at the bottom of this page. +
+ +
diff --git a/src/routes/index.mdx b/src/routes/index.mdx index a5a2c00..ccabce8 100644 --- a/src/routes/index.mdx +++ b/src/routes/index.mdx @@ -1,26 +1,34 @@ import { A } from "@solidjs/router"; -import { NewsList } from "~/components/NewsList" +import { NewsList } from "~/components/NewsList";
- +
-
-
+
+
-

Keep Local
Traffic Local

+

+ Keep Local + Traffic Local +

+
-
+
@@ -28,18 +36,42 @@ import { NewsList } from "~/components/NewsList"
-
-

DD-IX is an Internet exchange for Dresden and whole Saxony. As a non-commercial platform, we are open to all Internet stakeholders that are interested in multilateral exchange of Internet traffic.

- Learn More +
+

+ DD-IX is an Internet exchange for Dresden and whole Saxony. As a + non-commercial platform, we are open to all Internet stakeholders that are + interested in multilateral exchange of Internet traffic. +

+ + Learn More +
-
-

The DD-IX is operated by committed people of the DD-IX Dresden Internet Exchange e.V. The DD-IX Dresden Internet Exchange e.V. is a registered association under German law. Our mission is the economical, ecological, and robust exchange of data over the Internet. To enable direct data delivery between source and destination, we leverage the unique advantages of an Internet Exchage Point (IXP).

- Support Us +
+

+ DD-IX is operated by committed people of the DD-IX Dresden Internet + Exchange e.V. The DD-IX Dresden Internet Exchange e.V. is a registered + association under German law. Our mission is the economical, ecological, + and robust exchange of data over the Internet. To enable direct data + delivery between source and destination, we leverage the unique advantages + of an Internet Exchage Point (IXP). +

+ + Learn More +
-
+

Association

@@ -59,10 +91,13 @@ import { NewsList } from "~/components/NewsList" Support Us
+
+

News

- View More + + View More +
-
diff --git a/src/routes/network.mdx b/src/routes/network.mdx index f243d63..c5c9504 100644 --- a/src/routes/network.mdx +++ b/src/routes/network.mdx @@ -1,8 +1,10 @@ -
+

Network

-Currently there are 3 participants. Have a look at the list below for more information. +## List of Participants + +
@@ -30,7 +32,7 @@ Currently there are 3 participants. Have a look at the list below for more infor - + @@ -45,4 +47,4 @@ Currently there are 3 participants. Have a look at the list below for more infor
2 yeshair of Distributed and Networked Systems at TUDChair of Distributed and Networked Systems at TUD
3
-
+ diff --git a/src/routes/news/[slug].tsx b/src/routes/news/[slug].tsx index dc6d8f6..615b589 100644 --- a/src/routes/news/[slug].tsx +++ b/src/routes/news/[slug].tsx @@ -37,8 +37,18 @@ export default () => {

{post()?.title}

+
+ + {(tag) =>
{tag}
} +
+

- {post()?.published} by {post()?.authors.join(", ")} + {new Date(post()?.published).toLocaleDateString("us-US", { + year: "numeric", + month: "long", + day: "numeric", + })}{" "} + by {post()?.authors.join(", ")}

diff --git a/src/routes/news/index.tsx b/src/routes/news/index.tsx index 6e457e8..b6e484f 100644 --- a/src/routes/news/index.tsx +++ b/src/routes/news/index.tsx @@ -1,5 +1,11 @@ -import { createSignal, For, createMemo } from "solid-js"; -import { cache, createAsync, A, type RouteDefinition } from "@solidjs/router"; +import { createSignal, For, createMemo, createEffect } from "solid-js"; +import { + cache, + createAsync, + A, + useLocation, + type RouteDefinition, +} from "@solidjs/router"; import { classList } from "solid-js/web"; const getNewsList = cache(async () => { @@ -26,11 +32,15 @@ export const route = { export default () => { const newsList = createAsync(() => getNewsList()); const tagsData = createAsync(() => getNewsTags()); - const [tags, setTags] = createSignal( - Object.fromEntries( - tagsData()?.map((tag: string) => [tag, { active: false }]) ?? [] - ) - ); + const [tags, setTags] = createSignal({}); + + createEffect(() => { + setTags( + Object.fromEntries( + tagsData()?.map((tag: string) => [tag, { active: false }]) ?? [] + ) + ); + }); const tagsActive = createMemo(() => Object.entries(tags()) @@ -46,7 +56,7 @@ export default () => { {([tag, { active }]) => (