Skip to content

Commit

Permalink
Merge pull request #20 from Szedann/main
Browse files Browse the repository at this point in the history
blanketcon vanity page
  • Loading branch information
TheEpicBlock authored Feb 28, 2025
2 parents 4ba1bd5 + 22b08d2 commit bffd42e
Show file tree
Hide file tree
Showing 33 changed files with 444 additions and 144 deletions.
4 changes: 4 additions & 0 deletions fresh.gen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ import * as $_event_ from "./routes/[event].tsx";
import * as $_event_submissions from "./routes/[event]/submissions.tsx";
import * as $_404 from "./routes/_404.tsx";
import * as $_app from "./routes/_app.tsx";
import * as $_layout from "./routes/_layout.tsx";
import * as $index from "./routes/index.tsx";
import * as $pages_page_ from "./routes/pages/[page].tsx";
import * as $user_user_ from "./routes/user/[user].tsx";
import * as $vanity_bc23 from "./routes/vanity/bc23.tsx";
import * as $vanity_bc25 from "./routes/vanity/bc25.tsx";

import type { Manifest } from "$fresh/server.ts";

Expand All @@ -19,10 +21,12 @@ const manifest = {
"./routes/[event]/submissions.tsx": $_event_submissions,
"./routes/_404.tsx": $_404,
"./routes/_app.tsx": $_app,
"./routes/_layout.tsx": $_layout,
"./routes/index.tsx": $index,
"./routes/pages/[page].tsx": $pages_page_,
"./routes/user/[user].tsx": $user_user_,
"./routes/vanity/bc23.tsx": $vanity_bc23,
"./routes/vanity/bc25.tsx": $vanity_bc25,
},
islands: {},
baseUrl: import.meta.url,
Expand Down
10 changes: 1 addition & 9 deletions routes/_app.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { type PageProps } from "$fresh/server.ts";
import { Header } from "../components/Header.tsx";
export default function App({ Component }: PageProps) {
return (
<html>
Expand All @@ -12,14 +11,7 @@ export default function App({ Component }: PageProps) {
</head>

<body>
<div>
<div class="flex flex-col gap-4 max-w-4xl px-4 m-[auto]">
<Header />
<main>
<Component />
</main>
</div>
</div>
<Component />
</body>
</html>
);
Expand Down
16 changes: 16 additions & 0 deletions routes/_layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { PageProps } from "$fresh/server.ts";
import { Header } from "../components/Header.tsx";

export default function Layout({ Component, state }: PageProps) {
// do something with state here
return (
<div>
<div class="flex flex-col gap-4 max-w-4xl px-4 m-[auto]">
<Header />
<main>
<Component />
</main>
</div>
</div>
);
}
197 changes: 197 additions & 0 deletions routes/vanity/bc25.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
import { RouteConfig, RouteContext } from "$fresh/server.ts";
import { render } from "@deno/gfm";

import { fetchEvent, fetchEventSubmissions } from "../../lib/platform-api.tsx";
import { MarkdownDescriptionItem } from "../../lib/types.d.tsx";
import { asset, Head } from "$fresh/runtime.ts";

export const config: RouteConfig = {
skipInheritedLayouts: true,
};

export default async function Event(_req: Request, ctx: RouteContext) {
const event = await fetchEvent(fetch, "bc25");

if (!event.id) {
return ctx.renderNotFound();
}

const submissions = await fetchEventSubmissions(fetch, "bc25");
return (
<div className="bg-[#86dbfe]">
<Head>
<link rel="stylesheet" href={asset("/assets/vanity/bc25/main.css")} />
</Head>
<div className="bg-[#222034]">
<header className="max-w-4xl m-[auto] flex flex-col items-stretch">
<nav className="card p-0 mt-4 flex flex-col gap-2 relative">
<div className="flex flex-col md:flex-row justify-start items-center gap-2">
<a
className="nav-link flex h-12 gap-2 no-underline clickable-vanity relative md:absolute -left-2"
href="/"
>
<img
src="/assets/vanity/bc25/icons/modfest.png"
className="h-10 object-contain"
alt="ModFest Logo"
/>
</a>

<div className="grow" />
<div className="flex flex-wrap gap-1">
<a
className="nav-link nav-icon clickable-vanity"
href="https://github.com/ModFest"
target="_blank"
>
<img
src="/assets/vanity/bc25/icons/github.png"
alt="GitHub link"
/>
</a>
<a
className="nav-link nav-icon clickable-vanity"
href="https://modrinth.com/organization/modfest"
target="_blank"
>
<img
src="/assets/vanity/bc25/icons/modrinth.png"
alt="Modrinth link"
/>
</a>
<div className="w-0.5 h-auto rounded-full bg-black mx-1.5 my-0">
</div>
<a
className="nav-link nav-icon clickable-vanity"
href="https://floss.social/@modfest"
rel="me"
target="_blank"
>
<img
src="/assets/vanity/bc25/icons/mastodon.png"
alt="Mastodon link"
/>
</a>
<a
className="nav-link nav-icon clickable-vanity"
href="https://bsky.app/profile/modfest.net"
target="_blank"
>
<img
src="/assets/vanity/bc25/icons/bluesky.png"
alt="Bluesky link"
/>
</a>
<a
className="nav-link nav-icon clickable-vanity"
href="https://tumblr.com/modfest"
target="_blank"
>
<img
src="/assets/vanity/bc25/icons/tumblr.png"
alt="Tumblr link"
/>
</a>
<a
className="nav-link nav-icon clickable-vanity"
href="https://x.com/ModFestEvent"
target="_blank"
>
<img src="/assets/vanity/bc25/icons/x.png" alt="X link" />
</a>
<div className="w-0.5 h-auto rounded-full bg-black mx-1.5 my-0">
</div>
<a
className="nav-link nav-icon clickable-vanity"
href="https://discord.gg/gn543Ee"
target="_blank"
>
<img
className="!h-[1.6] !w-[1.6]"
src="/assets/vanity/bc25/icons/discord.png"
alt="Discord server invite"
/>
</a>
</div>
</div>
</nav>
</header>
<div className="w-full bg-[#86dbfe] bg-[url(/assets/vanity/bc25/sprites/gradient.png)] h-6 mt-2 bg-repeat-x bg-contain pixelated" />
</div>
<div className="flex flex-col bg-[url(/assets/vanity/bc25/sprites/clouds.png)] bg-cover bg-repeat-x pixelated slide">
<img
src="/assets/vanity/bc25/Logo_Opening.png"
className=" w-56 pixelated pt-12 max-w-4xl m-[auto] hover"
alt=""
/>
<img
src="/assets/vanity/bc25/bc25_logo.png"
className="w-full pixelated px-4 -mt-8 max-w-4xl m-[auto] hover"
alt=""
/>
<div class="justify-center flex gap-4 mb-24">
{(event.phase === "planning" || event.phase === "modding") &&
(
<a
href="https://discord.gg/gn543Ee"
target="_blank"
class="button"
>
Register on Discord!
</a>
)}
{event.phase === "showcase" && event.modpack &&
(
<a
href={event.modpack}
target="_blank"
class="button"
>
Play!
</a>
)}
{event.phase === "complete" && event.modpack &&
(
<a
href={event.modpack}
target="_blank"
class="button"
>
Download Modpack
</a>
)}
{submissions.length > 0 &&
(
<a href={`/${event.id}/submissions`} class="button clickable">
View Submissions
</a>
)}
</div>
</div>
<div className="bg-[#185090] bg-repeat bg-[auto_96px] bg-[center_top_48px] pixelated -mb-20">
<div className="w-full bg-[url(/assets/vanity/bc25/sprites/wave.png)] h-[48px] bg-repeat-x bg-contain pixelated slide" />
<img
src="/assets/vanity/bc25/island.apng"
alt="the volcano island spinning"
className="pixelated w-6xl -translate-y-[20%] mx-auto"
/>
</div>
<div className="bg-[url(assets/vanity/bc25/sprites/water_bg.png)] bg-repeat bg-[auto_96px] bg-[center_top] pixelated pb-24">
<div className="flex flex-col gap-4 max-w-4xl m-[auto] pt-[32px] text-sm">
{event.description.map((section) => (section.type === "markdown" &&
(
<article
class="card"
dangerouslySetInnerHTML={{
__html: render(
(section as MarkdownDescriptionItem).content.markdown,
),
}}
/>
))
)}
</div>
</div>
</div>
);
}
Loading

0 comments on commit bffd42e

Please sign in to comment.