diff --git a/Dockerfile b/Dockerfile
index b007f41..289b96f 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,6 @@
FROM node:20.16.0-alpine3.20 AS base
-LABEL version="0.4.0"
+LABEL version="0.5.0"
LABEL description="Astro based website to use as a profile"
ENV PNPM_HOME="/pnpm"
diff --git a/lib/directus.ts b/lib/directus.ts
new file mode 100644
index 0000000..3f601b2
--- /dev/null
+++ b/lib/directus.ts
@@ -0,0 +1,55 @@
+import { createDirectus, rest, } from '@directus/sdk';
+
+type Global = {
+ title: string;
+ description: string;
+ name: string;
+ tagline: string;
+ email: string;
+ portrait: string;
+ about: string;
+}
+
+type About = {
+ background: string;
+ experience: string;
+ education: string;
+ certifications: string;
+}
+
+type Skills = {
+ skill_1: string;
+ skill_1_description: string;
+ skill_2: string;
+ skill_2_description: string;
+ skill_3: string;
+ skill_3_description: string;
+ }
+
+type Author = {
+ name: string
+}
+
+export type Post = {
+ slug: string;
+ title: string;
+ content: string;
+ image: string;
+ published_date: string;
+ author: Author;
+ tags: string[];
+ image_alt: string;
+ }
+
+type Schema = {
+ global: Global;
+ about: About;
+ skills: Skills;
+ posts: Post[];
+}
+
+export const directus_url = "https://directus.alexlebens.dev"
+
+const directus = createDirectus(directus_url).with(rest());
+
+export default directus;
diff --git a/package.json b/package.json
index 5d2c777..1a5279e 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "site-profile",
"type": "module",
- "version": "0.4.0",
+ "version": "0.5.0",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
diff --git a/public/assets/hiking.jpg b/public/assets/hiking.jpg
deleted file mode 100644
index 8206ac1..0000000
Binary files a/public/assets/hiking.jpg and /dev/null differ
diff --git a/public/assets/portrait.jpg b/public/assets/portrait.jpg
deleted file mode 100644
index 987ac26..0000000
Binary files a/public/assets/portrait.jpg and /dev/null differ
diff --git a/public/assets/stock-1.jpg b/public/assets/stock-1.jpg
deleted file mode 100644
index c8dec6b..0000000
Binary files a/public/assets/stock-1.jpg and /dev/null differ
diff --git a/public/assets/stock-2.jpg b/public/assets/stock-2.jpg
deleted file mode 100644
index 3ad4b71..0000000
Binary files a/public/assets/stock-2.jpg and /dev/null differ
diff --git a/public/assets/stock-3.jpg b/public/assets/stock-3.jpg
deleted file mode 100644
index 2706854..0000000
Binary files a/public/assets/stock-3.jpg and /dev/null differ
diff --git a/public/assets/stock-4.jpg b/public/assets/stock-4.jpg
deleted file mode 100644
index 6942cc2..0000000
Binary files a/public/assets/stock-4.jpg and /dev/null differ
diff --git a/src/components/ContactCTA.astro b/src/components/ContactCTA.astro
index f85ca90..8bcc4b5 100644
--- a/src/components/ContactCTA.astro
+++ b/src/components/ContactCTA.astro
@@ -1,11 +1,16 @@
---
import CallToAction from './CallToAction.astro';
import Icon from './Icon.astro';
+
+import directus from "../../lib/directus"
+import { readSingleton } from "@directus/sdk";
+
+const global = await directus.request(readSingleton("global"));
---
- © {currentYear} Alex Lebens
+ © {currentYear} {global.name}
GitHub
diff --git a/src/components/MainHead.astro b/src/components/MainHead.astro
index 6c04009..ddd28be 100644
--- a/src/components/MainHead.astro
+++ b/src/components/MainHead.astro
@@ -1,14 +1,19 @@
---
import '../styles/global.css';
+import directus from "../../lib/directus"
+import { readSingleton } from "@directus/sdk";
+
interface Props {
title?: string | undefined;
description?: string | undefined;
}
+const global = await directus.request(readSingleton("global"));
+
const {
- title = 'Alex Lebens',
- description = 'A profile of Alex Lebens',
+ title = `${global.name}`,
+ description = `A profile of ${global.name}`,
} = Astro.props;
---
diff --git a/src/components/Nav.astro b/src/components/Nav.astro
index fd82199..9eeaad6 100644
--- a/src/components/Nav.astro
+++ b/src/components/Nav.astro
@@ -3,6 +3,9 @@ import Icon from './Icon.astro';
import ThemeToggle from './ThemeToggle.astro';
import type { iconPaths } from './IconPaths';
+import directus from "../../lib/directus"
+import { readSingleton } from "@directus/sdk";
+
const textLinks: { label: string; href: string }[] = [
{ label: 'Home', href: '/' },
{ label: 'Projects', href: '/projects/' },
@@ -13,13 +16,15 @@ const iconLinks: { label: string; href: string; icon: keyof typeof iconPaths }[]
{ label: 'GitHub', href: 'https://github.com/alexlebens', icon: 'github-logo' },
{ label: 'LinkedIn', href: 'https://www.linkedin.com/in/alexanderlebens', icon: 'linkedin-logo' },
];
+
+const global = await directus.request(readSingleton("global"));
---