diff --git a/bun.lockb b/bun.lockb index a879dcb..41ae62e 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/config.yml b/config.yml new file mode 100644 index 0000000..e7ae07e --- /dev/null +++ b/config.yml @@ -0,0 +1,14 @@ +# Site Configuration - Control visibility of sections +sections: + about: true + workExperience: true + talks: true + writing: true + socialLinks: true + +# Individual elements +elements: + avatar: true + themeSwitch: true + header: true + footer: true diff --git a/package.json b/package.json index c34bd85..204a0be 100644 --- a/package.json +++ b/package.json @@ -14,10 +14,12 @@ "@astrojs/sitemap": "3.6.0", "@tailwindcss/typography": "^0.5.19", "@tailwindcss/vite": "^4.1.16", + "@types/js-yaml": "^4.0.9", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "astro": "5.15.2", "framer-motion": "^12.23.24", + "js-yaml": "^4.1.0", "lucide-react": "^0.548.0", "mdast-util-to-string": "^4.0.0", "react": "^18.3.1", diff --git a/src/components/partials/Footer.astro b/src/components/partials/Footer.astro index ca9114b..54b75c7 100644 --- a/src/components/partials/Footer.astro +++ b/src/components/partials/Footer.astro @@ -1,9 +1,14 @@ --- import Container from '@/components/Container.astro'; +import { getSiteConfig } from '@/lib/config'; + +const config = getSiteConfig(); --- - -

- © {new Date().getFullYear()}. Powered by Astro and CVfolio. -

-
+{config.elements.footer && ( + +

+ © {new Date().getFullYear()}. Powered by Astro and CVfolio. +

+
+)} \ No newline at end of file diff --git a/src/components/partials/Header.astro b/src/components/partials/Header.astro index 47a431e..7d54795 100644 --- a/src/components/partials/Header.astro +++ b/src/components/partials/Header.astro @@ -1,43 +1,49 @@ --- import Container from '@/components/Container.astro'; +import { getSiteConfig } from '@/lib/config'; const pathname = Astro.url.pathname; const isHomePage = pathname === '/'; const isWritingPage = pathname.startsWith('/writing'); ---- - -
- -
-
+
+ +
+ +)} \ No newline at end of file diff --git a/src/layouts/BaseLayout.astro b/src/layouts/BaseLayout.astro index b9ba860..1175030 100644 --- a/src/layouts/BaseLayout.astro +++ b/src/layouts/BaseLayout.astro @@ -6,12 +6,14 @@ import Header from '@/components/partials/Header.astro'; import Footer from '@/components/partials/Footer.astro'; import Head from '@/components/partials/Head.astro'; import SwitchTheme from '@/components/SwitchTheme.tsx'; +import { getSiteConfig } from '@/lib/config'; interface Props { seo?: Seo } const { seo } = Astro.props; +const config = getSiteConfig(); --- @@ -22,6 +24,8 @@ const { seo } = Astro.props;