Working on website

This commit is contained in:
2025-02-06 15:06:32 +01:00
parent 4e68cd9b39
commit 0f0c68be82
8 changed files with 105 additions and 28 deletions

View File

@@ -72,11 +72,13 @@ async function changeLocale(newLocale: string) {
document.body.style.animation = ''
}
const open = ref(false)
const openSelectMenu = ref(false)
const openContactDrawer = ref(false)
const router = useRouter()
defineShortcuts({
t: () => toggleTheme(),
l: () => open.value = !open.value,
l: () => openSelectMenu.value = !openSelectMenu.value,
c: () => openContactDrawer.value = !openContactDrawer.value,
backspace: () => router.back(),
})
</script>
@@ -94,6 +96,7 @@ defineShortcuts({
v-for="nav in navs"
:key="nav.label.en"
:text="nav.label[locale]"
:delay-duration="4"
>
<UButton
:icon="`i-ph:${nav.icon}`"
@@ -102,26 +105,56 @@ defineShortcuts({
:aria-label="nav.label"
color="neutral"
size="sm"
variant="outline"
variant="ghost"
/>
</UTooltip>
<USeparator orientation="vertical" class="h-6" />
<UDrawer
v-model:open="openContactDrawer"
should-scale-background
:title="t('contact.title')"
>
<UTooltip
:kbds="['C']"
:text="t('contact.button')"
:delay-duration="4"
class="cursor-pointer"
>
<UButton
icon="i-ph-mailbox-duotone"
color="neutral"
size="sm"
variant="ghost"
@click="openContactDrawer = true"
/>
</UTooltip>
<template #body>
<div>Hey</div>
</template>
</UDrawer>
<USeparator orientation="vertical" class="h-6" />
<ClientOnly>
<UTooltip
:kbds="['T']"
:text="t('theme')"
class="cursor-pointer"
:delay-duration="4"
>
<UButton
:icon="isDark ? 'i-ph-moon-duotone' : 'i-ph-sun-duotone'"
color="neutral"
aria-label="switch theme"
size="sm"
variant="outline"
variant="ghost"
@click="toggleTheme()"
/>
</UTooltip>
<UTooltip
:kbds="['L']"
:text="t('language')"
class="cursor-pointer"
:content="{
align: 'center',
side: 'right',
@@ -130,13 +163,13 @@ defineShortcuts({
>
<USelect
v-model="lang"
v-model:open="open"
v-model:open="openSelectMenu"
:items="locales"
size="sm"
:leading-icon="currentLocale.icon"
label-key="label"
value-key="code"
variant="outline"
variant="soft"
@update:model-value="changeLocale"
/>
</UTooltip>
@@ -177,15 +210,27 @@ defineShortcuts({
{
"en": {
"theme": "switch theme",
"language": "change language"
"language": "change language",
"contact": {
"button": "contact me",
"title": "Contact me"
}
},
"fr": {
"theme": "changer de thème",
"language": "changer de langue"
"language": "changer de langue",
"contact": {
"button": "me contacter",
"title": "Me contacter"
}
},
"es": {
"theme": "cambiar tema",
"language": "cambiar idioma"
"language": "cambiar idioma",
"contact": {
"button": "contactame",
"title": "Contactame"
}
}
}
</i18n>

View File

@@ -54,14 +54,14 @@ function updateTag(payload: number | string) {
<span class="truncate">{{ t(item.translation) }}</span>
</template>
</UTabs>
<ul class="grid grid-cols-1 md:grid-cols-2 gap-8">
<ul class="grid grid-cols-1 gap-4">
<NuxtLink
v-for="(writing, id) in writings"
:key="id"
:to="writing.path"
>
<li
class=" h-full border p-4 shadow-sm border-neutral-200 rounded-md hover:border-neutral-500 dark:border-neutral-800 dark:hover:border-neutral-600 duration-300"
class=" h-full border p-4 border-neutral-200 rounded-md hover:border-neutral-500 dark:border-neutral-800 dark:hover:border-neutral-600 duration-300"
>
<article class="space-y-2">
<h1
@@ -165,3 +165,9 @@ function updateTag(payload: number | string) {
}
}
</i18n>
<style scoped>
.tablist > button {
cursor: pointer !important;
}
</style>

View File

@@ -1,7 +1,7 @@
---
slug: arthome
title: ArtHome
description: 🏡 ArtHome - Your personalised home page in your browser
description: 🏡 Your personalised home page in your browser
publishedAt: 2024/09/04
readingTime: 1
cover: arthome/cover.png

View File

@@ -1,7 +1,7 @@
---
slug: monte-carlo-project
title: Monte Carlo Methods Project
description: ⚠️ Still in progress - A project to demonstrate the use of Monte Carlo methods in R.
description: A project to demonstrate the use of Monte Carlo methods in R.
publishedAt: 2024/11/24
readingTime: 3
tags:

View File

@@ -9,7 +9,6 @@ tags:
- data
- ai
- python
- r
---
[Python Data & ML](https://github.com/ArthurDanjou/Python-Data-Machine-Learning) is a repository dedicated to learning and practicing Python libraries for machine learning. It includes a variety of projects and exercises that cover the following topics.

View File

@@ -9,6 +9,10 @@ export default defineNuxtConfig({
separator: '•',
},
},
rootAttrs: {
'vaul-drawer-wrapper': '',
'class': 'bg-[var(--ui-bg)]',
},
},
css: ['~/assets/css/main.css'],
@@ -35,7 +39,7 @@ export default defineNuxtConfig({
// Nuxt Content
content: {
preview: {
api: 'https://api.nuxt.studio',
// todo: api: 'https://api.nuxt.studio',
},
build: {
markdown: {
@@ -117,16 +121,6 @@ export default defineNuxtConfig({
defaultLocale: 'en',
},
// Nuxt Icon
icon: {
serverBundle: {
collections: ['twemoji', 'ph', 'logos', 'vscode-icons'],
},
clientBundle: {
scan: true,
},
},
// Nuxt Google Fonts
googleFonts: {
display: 'swap',

View File

@@ -14,6 +14,9 @@
"db:generate": "drizzle-kit generate"
},
"dependencies": {
"@iconify-json/logos": "^1.2.4",
"@iconify-json/ph": "^1.2.2",
"@iconify-json/vscode-icons": "^1.2.11",
"@nuxt/content": "3.1.0",
"@nuxt/image": "^1.9.0",
"@nuxt/ui": "3.0.0-alpha.12",

36
pnpm-lock.yaml generated
View File

@@ -8,6 +8,15 @@ importers:
.:
dependencies:
'@iconify-json/logos':
specifier: ^1.2.4
version: 1.2.4
'@iconify-json/ph':
specifier: ^1.2.2
version: 1.2.2
'@iconify-json/vscode-icons':
specifier: ^1.2.11
version: 1.2.11
'@nuxt/content':
specifier: 3.1.0
version: 3.1.0(@libsql/client@0.5.6(encoding@0.1.13))(drizzle-orm@0.33.0(@cloudflare/workers-types@4.20250124.3)(@libsql/client@0.5.6(encoding@0.1.13))(@opentelemetry/api@1.9.0)(better-sqlite3@11.8.1)(pg@8.13.1))(magicast@0.3.5)(rollup@4.32.1)(typescript@5.7.3)
@@ -1106,6 +1115,15 @@ packages:
resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==}
engines: {node: '>=18.18'}
'@iconify-json/logos@1.2.4':
resolution: {integrity: sha512-XC4If5D/hbaZvUkTV8iaZuGlQCyG6CNOlaAaJaGa13V5QMYwYjgtKk3vPP8wz3wtTVNVEVk3LRx1fOJz+YnSMw==}
'@iconify-json/ph@1.2.2':
resolution: {integrity: sha512-PgkEZNtqa8hBGjHXQa4pMwZa93hmfu8FUSjs/nv4oUU6yLsgv+gh9nu28Kqi8Fz9CCVu4hj1MZs9/60J57IzFw==}
'@iconify-json/vscode-icons@1.2.11':
resolution: {integrity: sha512-V0ldtWPUKe7ZB3CV/TjgDW1Gbz74AxjGPS2NBWDTSn/y25gTwFycI1YcrluDhuVSoQpDEIYmm3JQJkhtSefh7A==}
'@iconify/collections@1.0.511':
resolution: {integrity: sha512-Ilp9gg6HYu9oGZUCNGCEsblATFagC7AmvsUMi4mxfPbh48ygKQ4vIfzJetE9AAu2qwqaYt/dRQjTXvt5Ex8HwQ==}
@@ -7521,6 +7539,18 @@ snapshots:
'@humanwhocodes/retry@0.4.1': {}
'@iconify-json/logos@1.2.4':
dependencies:
'@iconify/types': 2.0.0
'@iconify-json/ph@1.2.2':
dependencies:
'@iconify/types': 2.0.0
'@iconify-json/vscode-icons@1.2.11':
dependencies:
'@iconify/types': 2.0.0
'@iconify/collections@1.0.511':
dependencies:
'@iconify/types': 2.0.0
@@ -11839,13 +11869,13 @@ snapshots:
mdast-util-gfm@3.0.0:
dependencies:
mdast-util-from-markdown: 2.0.1
mdast-util-from-markdown: 2.0.2
mdast-util-gfm-autolink-literal: 2.0.1
mdast-util-gfm-footnote: 2.0.0
mdast-util-gfm-strikethrough: 2.0.0
mdast-util-gfm-table: 2.0.0
mdast-util-gfm-task-list-item: 2.0.0
mdast-util-to-markdown: 2.1.0
mdast-util-to-markdown: 2.1.2
transitivePeerDependencies:
- supports-color
@@ -12006,7 +12036,7 @@ snapshots:
micromark-extension-gfm-tagfilter: 2.0.0
micromark-extension-gfm-task-list-item: 2.1.0
micromark-util-combine-extensions: 2.0.0
micromark-util-types: 2.0.0
micromark-util-types: 2.0.1
micromark-extension-math@3.1.0:
dependencies: