diff --git a/.env.example b/.env.example
index 7d4f160..8a6a391 100644
--- a/.env.example
+++ b/.env.example
@@ -1,6 +1,4 @@
# Generated by Shelve CLI
-NUXT_PUBLIC_STUDIO_TOKENS=your_value
-NUXT_PUBLIC_MEETING_LINK=your_value
NUXT_PRIVATE_RESEND_API_KEY=your_value
NUXT_PRIVATE_GITHUB_TOKEN=your_value
-NUXT_PRIVATE_NOTES_PASSWORD=your_value
\ No newline at end of file
+NUXT_PRIVATE_NOTES_PASSWORD=your_value
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index a63a1c2..129e67b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -26,7 +26,7 @@ jobs:
run_install: false
- name: 📦 Install dependencies
- run: pnpm install --frozen-lockfile
+ run: pnpm install
- name: 🛠️ Build
run: pnpm run build
diff --git a/Dockerfile b/Dockerfile
index 82ddf5c..f0f1267 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -4,17 +4,15 @@ FROM node:22.13.1-alpine AS build
ARG NUXT_PRIVATE_GITHUB_TOKEN
ENV NUXT_PRIVATE_GITHUB_TOKEN=$NUXT_PRIVATE_GITHUB_TOKEN
-RUN apk add --no-cache python3 make g++
-RUN corepack enable && corepack prepare pnpm@latest --activate
-
WORKDIR /app
-COPY pnpm-lock.yaml package.json ./
+RUN corepack enable
-COPY . .
+COPY package.json pnpm-lock.yaml .npmrc ./
-RUN corepack enable
-RUN pnpm install --frozen-lockfile --prod
+RUN pnpm install
+
+COPY . .
RUN pnpm run build
diff --git a/app/app.config.ts b/app/app.config.ts
index 451259c..6bc681d 100644
--- a/app/app.config.ts
+++ b/app/app.config.ts
@@ -1,7 +1,10 @@
export default defineAppConfig({
+ global: {
+ meetingLink: 'https://cal.com/hugorcd/15min',
+ },
profile: {
name: 'Hugo Richard',
- job: 'Frontend Architect and Designer',
+ job: '[Frontend Engineer at [Nuxtlabs](https://nuxtlabs.com)]{.text-accent}',
email: 'contact@hrcd.fr',
phone: '(+33) 6 21 56 22 18',
picture: 'https://avatars.githubusercontent.com/u/71938701?v=4'
diff --git a/app/components/List.vue b/app/components/List.vue
index 5e86130..ed3c46d 100644
--- a/app/components/List.vue
+++ b/app/components/List.vue
@@ -1,36 +1,15 @@
{{ post.title }}
diff --git a/app/components/ThemeSelector.vue b/app/components/ThemeSelector.vue
index f603cee..5ff071a 100644
--- a/app/components/ThemeSelector.vue
+++ b/app/components/ThemeSelector.vue
@@ -10,7 +10,7 @@ const switchTheme = () => {
colorMode.preference = colorMode.value
}
-const startViewTransition = (theme) => {
+const startViewTransition = (theme: string) => {
if (theme === colorMode.value) return
if (reduceMotion.value) {
switchTheme()
diff --git a/app/components/content/Hero.vue b/app/components/content/Hero.vue
index 5dde7e8..0fe3a5c 100644
--- a/app/components/content/Hero.vue
+++ b/app/components/content/Hero.vue
@@ -17,9 +17,7 @@ const { profile } = useAppConfig()
{{ profile.name }}
-
- {{ profile.job }}
-
+
+
diff --git a/app/components/content/Writing.vue b/app/components/content/Writing.vue
index 9d870fa..036d7e3 100644
--- a/app/components/content/Writing.vue
+++ b/app/components/content/Writing.vue
@@ -18,14 +18,14 @@ async function submit() {
}
}
-const { data, error } = await useAsyncData('writings', () => queryCollection('writing').order('date', 'DESC').all())
+const { data: posts, error } = await useAsyncData('writings', () => queryCollection('writing').order('date', 'DESC').all())
-if (!data.value || !error.value) createError({ statusCode: 404 })
+if (!posts.value || !error.value) createError({ statusCode: 404 })
Subscribe to get notified about new articles
diff --git a/app/components/content/WritingList.vue b/app/components/content/WritingList.vue
index 69fb73c..f3c4616 100644
--- a/app/components/content/WritingList.vue
+++ b/app/components/content/WritingList.vue
@@ -1,24 +1,17 @@
+