diff --git a/.gitignore b/.gitignore index 9b89eca3f..fd1b37655 100644 --- a/.gitignore +++ b/.gitignore @@ -145,3 +145,4 @@ src/content/days # Local secrets (never commit) .env.local +public/content diff --git a/astro.config.mjs b/astro.config.mjs index 8271e31b4..94d9fe5f5 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -12,6 +12,7 @@ import { execSync } from "node:child_process"; import svelte from "@astrojs/svelte"; import compress from "astro-compress"; import tailwindcss from "@tailwindcss/vite"; +import pagefind from "astro-pagefind"; let gitVersion = String(process.env.GIT_VERSION ?? "").slice(0, 7); @@ -36,6 +37,39 @@ console.log( `\x1b[35m[EP]\x1b[0m Fast Build: \x1b[1m\x1b[34m${fastBuild}\x1b[0m` ); +import fs from "fs"; +import p from "path"; + +function syncContentImages() { + function syncDir(srcDir, destDir) { + if (!fs.existsSync(srcDir)) return; + const entries = fs.readdirSync(srcDir, { withFileTypes: true }); + for (const entry of entries) { + const srcPath = p.join(srcDir, entry.name); + const destPath = p.join(destDir, entry.name); + if (entry.isDirectory()) { + syncDir(srcPath, destPath); + } else if ( + entry.isFile() && + /\.(jpg|jpeg|png|webp|gif|svg)$/i.test(entry.name) + ) { + fs.mkdirSync(p.dirname(destPath), { recursive: true }); + fs.cpSync(srcPath, destPath, { force: true }); + } + } + } + + return { + name: "sync-content-images", + buildStart() { + console.log( + "\x1b[35m[EP]\x1b[0m Syncing images from src/content/ to public/content/..." + ); + syncDir("src/content", "public/content"); + }, + }; +} + function dontDie() { return { name: "dont-die", @@ -87,7 +121,7 @@ export default defineConfig({ }, }, - plugins: [tailwindcss()], + plugins: [tailwindcss(), syncContentImages()], }, markdown: { remarkPlugins: [ @@ -151,6 +185,7 @@ export default defineConfig({ // "https://vdo.ninja/?room=EuroPython_2025_Terrace_2B&hash=338a&do", }, integrations: [ + pagefind(), mdx(), svelte(), ...(fastBuild diff --git a/public/banner_vert.svg b/public/banner_vert.svg new file mode 100644 index 000000000..45a658b7f --- /dev/null +++ b/public/banner_vert.svg @@ -0,0 +1,163 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/dragon.svg b/public/dragon.svg new file mode 100644 index 000000000..a1e9a7e4a --- /dev/null +++ b/public/dragon.svg @@ -0,0 +1,1882 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/eps-logo.svg b/public/eps-logo.svg index 7307bf8e4..b6a5102d3 100644 --- a/public/eps-logo.svg +++ b/public/eps-logo.svg @@ -1,53 +1,26 @@ - - - - - - - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/flowers/flowers-tile-new.svg b/public/flowers/flowers-tile-new.svg new file mode 100644 index 000000000..180ce9a2a --- /dev/null +++ b/public/flowers/flowers-tile-new.svg @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/flowers/individual/heart_01.svg b/public/flowers/individual/heart_01.svg new file mode 100644 index 000000000..93bb089b6 --- /dev/null +++ b/public/flowers/individual/heart_01.svg @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/heart_02.svg b/public/flowers/individual/heart_02.svg new file mode 100644 index 000000000..4f45c753f --- /dev/null +++ b/public/flowers/individual/heart_02.svg @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/leaves_01.svg b/public/flowers/individual/leaves_01.svg new file mode 100644 index 000000000..c94304968 --- /dev/null +++ b/public/flowers/individual/leaves_01.svg @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/leaves_02.svg b/public/flowers/individual/leaves_02.svg new file mode 100644 index 000000000..b34df5b7c --- /dev/null +++ b/public/flowers/individual/leaves_02.svg @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/leaves_03.svg b/public/flowers/individual/leaves_03.svg new file mode 100644 index 000000000..99421e30a --- /dev/null +++ b/public/flowers/individual/leaves_03.svg @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/leaves_04.svg b/public/flowers/individual/leaves_04.svg new file mode 100644 index 000000000..59ee37e2c --- /dev/null +++ b/public/flowers/individual/leaves_04.svg @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/flowers/individual/rooster_01.svg b/public/flowers/individual/rooster_01.svg new file mode 100644 index 000000000..b8102a0ae --- /dev/null +++ b/public/flowers/individual/rooster_01.svg @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/ice.jpg b/public/ice.jpg new file mode 100644 index 000000000..f53f6f96e Binary files /dev/null and b/public/ice.jpg differ diff --git a/public/krakow.jpg b/public/krakow.jpg new file mode 100644 index 000000000..36a21aecf Binary files /dev/null and b/public/krakow.jpg differ diff --git a/public/krakow.webp b/public/krakow.webp new file mode 100644 index 000000000..a3adc73ad Binary files /dev/null and b/public/krakow.webp differ diff --git a/public/ribbon.svg b/public/ribbon.svg new file mode 100644 index 000000000..1d0b5a6ca --- /dev/null +++ b/public/ribbon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/AnimatedStars.astro b/src/components/AnimatedStars.astro index dcf4873ae..853b7e992 100644 --- a/src/components/AnimatedStars.astro +++ b/src/components/AnimatedStars.astro @@ -69,11 +69,11 @@ width: 100%; height: 100%; background-image: - radial-gradient(2px 2px at 20% 15%, rgba(255,255,255,0.8), transparent), + radial-gradient(2px 2px at 20% 15%, oklch(1 0 0 / 0.8), transparent), radial-gradient(1px 1px at 45% 35%, white, transparent), - radial-gradient(1px 1px at 65% 55%, rgba(255,255,255,0.7), transparent), + radial-gradient(1px 1px at 65% 55%, oklch(1 0 0 / 0.7), transparent), radial-gradient(2px 2px at 80% 25%, white, transparent), - radial-gradient(1px 1px at 35% 75%, rgba(255,255,255,0.9), transparent), + radial-gradient(1px 1px at 35% 75%, oklch(1 0 0 / 0.9), transparent), radial-gradient(1px 1px at 55% 45%, white, transparent); background-size: 300px 300px, diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro index 53f0f9130..fea1d0a35 100644 --- a/src/components/BaseHead.astro +++ b/src/components/BaseHead.astro @@ -16,11 +16,19 @@ const { title, description, image = "/social-card.png" } = Astro.props; + + + + + + + + diff --git a/src/components/Breadcrumbs.astro b/src/components/Breadcrumbs.astro index cd376cfc2..bf5d3ee57 100644 --- a/src/components/Breadcrumbs.astro +++ b/src/components/Breadcrumbs.astro @@ -100,7 +100,7 @@ if (breadcrumbs.length === 1 && normalizedCurrentPath !== normalizePath(homePath {breadcrumbs.map((crumb, index) => (
  • {crumb.isActive ? ( - + {crumb.name} ) : crumb.path ? ( @@ -108,12 +108,12 @@ if (breadcrumbs.length === 1 && normalizedCurrentPath !== normalizePath(homePath {crumb.name} ) : ( - + {crumb.name} )} {index < breadcrumbs.length - 1 && ( -