mirror of
https://github.com/ArthurDanjou/artsite.git
synced 2026-01-14 15:54:13 +01:00
Compare commits
5 Commits
fb25eddaf0
...
6296297855
| Author | SHA1 | Date | |
|---|---|---|---|
| 6296297855 | |||
| 8e17fc1e11 | |||
| bd044aed24 | |||
| 0f37a0072d | |||
| ca5cf60c4a |
@@ -3,12 +3,27 @@ const { data: page } = await useAsyncData('hobbies', () => {
|
||||
return queryCollection('hobbies').first()
|
||||
})
|
||||
|
||||
useSeoMeta({
|
||||
const head = {
|
||||
title: 'Balance & Perspectives',
|
||||
description: 'Beyond the code. Exploring how competitive sports, motorsports strategy, and cultural experiences fuel my research resilience and cognitive flexibility.',
|
||||
ogTitle: 'Balance & Perspectives • Arthur Danjou',
|
||||
ogDescription: 'Beyond the code. Exploring how competitive sports, motorsports strategy, and cultural experiences fuel my research resilience and cognitive flexibility.',
|
||||
twitterCard: 'summary_large_image'
|
||||
subtitle: ''
|
||||
}
|
||||
|
||||
useSeoMeta({
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
ogTitle: `${head.title} • Arthur Danjou`,
|
||||
ogDescription: head.description,
|
||||
twitterCard: 'summary_large_image',
|
||||
twitterTitle: head.title,
|
||||
twitterDescription: head.description
|
||||
})
|
||||
|
||||
defineOgImageComponent('NuxtSeo', {
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
subtitle: head.subtitle,
|
||||
theme: '#F43F5E'
|
||||
})
|
||||
</script>
|
||||
|
||||
|
||||
@@ -1,10 +1,25 @@
|
||||
<script lang="ts" setup>
|
||||
useSeoMeta({
|
||||
const head = {
|
||||
title: 'AI Safety & Applied Mathematics',
|
||||
description: 'Research Engineer & Master 2 Student at Paris-Dauphine (ISF). Focusing on AI Alignment, Robustness, and Safe Deep Learning.',
|
||||
ogTitle: 'Arthur Danjou • AI Safety & Applied Mathematics',
|
||||
ogDescription: 'Research Engineer & Master 2 Student at Paris-Dauphine (ISF). Focusing on AI Alignment, Robustness, and Safe Deep Learning.',
|
||||
twitterCard: 'summary_large_image'
|
||||
subtitle: ''
|
||||
}
|
||||
|
||||
useSeoMeta({
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
ogTitle: `Arthur Danjou • ${head.title}`,
|
||||
ogDescription: head.description,
|
||||
twitterCard: 'summary_large_image',
|
||||
twitterTitle: head.title,
|
||||
twitterDescription: head.description
|
||||
})
|
||||
|
||||
defineOgImageComponent('NuxtSeo', {
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
subtitle: head.subtitle,
|
||||
theme: '#F43F5E'
|
||||
})
|
||||
|
||||
const { data: page } = await useAsyncData('index', () => {
|
||||
|
||||
@@ -26,7 +26,16 @@ useSeoMeta({
|
||||
description: project.value.description,
|
||||
ogTitle: `${project.value.title} • Arthur Danjou`,
|
||||
ogDescription: project.value.description,
|
||||
twitterCard: 'summary_large_image'
|
||||
twitterCard: 'summary_large_image',
|
||||
twitterTitle: project.value.title,
|
||||
twitterDescription: project.value.description
|
||||
})
|
||||
|
||||
defineOgImageComponent('NuxtSeo', {
|
||||
title: project.value.title,
|
||||
description: project.value.description,
|
||||
subtitle: project.value.type ? `Project Type: ${project.value.type}` : '',
|
||||
theme: '#F43F5E'
|
||||
})
|
||||
|
||||
const { statusColors, typeColors } = useProjectColors()
|
||||
|
||||
@@ -7,12 +7,25 @@ const { data: projects } = await useAsyncData('projects', () => {
|
||||
.all()
|
||||
})
|
||||
|
||||
useSeoMeta({
|
||||
const head = {
|
||||
title: 'Engineering & Research Labs',
|
||||
description: 'Bridging the gap between theoretical models and production systems. Explore my experimental labs, open-source contributions, and engineering work.',
|
||||
ogTitle: 'Engineering & Research Labs • Arthur Danjou',
|
||||
ogDescription: 'Bridging the gap between theoretical models and production systems. Explore my experimental labs, open-source contributions, and engineering work.',
|
||||
twitterCard: 'summary_large_image'
|
||||
description: 'Bridging the gap between theoretical models and production systems. Explore my experimental labs, open-source contributions, and engineering work.'
|
||||
}
|
||||
|
||||
useSeoMeta({
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
ogTitle: `${head.title} • Arthur Danjou`,
|
||||
ogDescription: head.description,
|
||||
twitterCard: 'summary_large_image',
|
||||
twitterTitle: head.title,
|
||||
twitterDescription: head.description
|
||||
})
|
||||
|
||||
defineOgImageComponent('NuxtSeo', {
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
theme: '#F43F5E'
|
||||
})
|
||||
|
||||
const { statusColors, typeColors } = useProjectColors()
|
||||
|
||||
@@ -3,12 +3,27 @@ const { data: page } = await useAsyncData('uses', () => {
|
||||
return queryCollection('uses').first()
|
||||
})
|
||||
|
||||
useSeoMeta({
|
||||
const head = {
|
||||
title: 'Research Lab & Technical Setup',
|
||||
description: 'A curated list of the hardware, software, and self-hosted infrastructure that powers my mathematical modeling and AI research workflows.',
|
||||
ogTitle: 'Research Lab & Technical Setup • Arthur Danjou',
|
||||
ogDescription: 'A curated list of the hardware, software, and self-hosted infrastructure that powers my mathematical modeling and AI research workflows.',
|
||||
twitterCard: 'summary_large_image'
|
||||
subtitle: 'The gear powering my research & development workflow.'
|
||||
}
|
||||
|
||||
useSeoMeta({
|
||||
title: head.title,
|
||||
description: head.description,
|
||||
ogTitle: `${head.title} • Arthur Danjou`,
|
||||
ogDescription: head.description,
|
||||
twitterCard: 'summary_large_image',
|
||||
twitterTitle: head.title,
|
||||
twitterDescription: head.description
|
||||
})
|
||||
|
||||
defineOgImageComponent('NuxtSeo', {
|
||||
title: head.title,
|
||||
subtitle: head.subtitle,
|
||||
description: head.description,
|
||||
theme: '#F43F5E'
|
||||
})
|
||||
</script>
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { definePerson } from 'nuxt-schema-org/schema'
|
||||
|
||||
export default defineNuxtConfig({
|
||||
|
||||
modules: [
|
||||
@@ -26,8 +28,8 @@ export default defineNuxtConfig({
|
||||
},
|
||||
titleTemplate: '%s %separator %siteName',
|
||||
link: [
|
||||
{ rel: 'icon', type: 'image/webp', href: '/favicon.webp' },
|
||||
{ rel: 'apple-touch-icon', href: '/favicon.webp' }
|
||||
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
|
||||
{ rel: 'apple-touch-icon', href: '/favicon.ico' }
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -138,6 +140,31 @@ export default defineNuxtConfig({
|
||||
}
|
||||
},
|
||||
|
||||
schemaOrg: {
|
||||
identity: definePerson({
|
||||
name: 'Arthur Danjou',
|
||||
givenName: 'Arthur',
|
||||
familyName: 'Danjou',
|
||||
image: '/arthur.webp',
|
||||
description: 'Research Engineer & Applied Mathematics Student. Focusing on AI Safety, Robustness, and Statistical Learning.',
|
||||
jobTitle: 'Research Engineer & Applied Mathematics Student',
|
||||
|
||||
email: 'arthurdanjou@outlook.fr',
|
||||
url: 'https://arthurdanjou.fr',
|
||||
sameAs: [
|
||||
'https://twitter.com/arthurdanj',
|
||||
'https://github.com/arthurdanjou',
|
||||
'https://linkedin.com/in/arthurdanjou'
|
||||
],
|
||||
|
||||
worksFor: {
|
||||
'@type': 'Organization',
|
||||
'name': 'Arthur Danjou',
|
||||
'url': 'https://arthurdanjou.fr'
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
seo: {
|
||||
redirectToCanonicalSiteUrl: true
|
||||
},
|
||||
|
||||
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 179 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 155 KiB |
Reference in New Issue
Block a user