+
diff --git a/app/pages/index.vue b/app/pages/index.vue
index a6c78f1..c6b880f 100644
--- a/app/pages/index.vue
+++ b/app/pages/index.vue
@@ -6,8 +6,6 @@ const { data: page } = await useAsyncData(`/home/${locale.value}`, () => {
}, {
watch: [locale],
})
-
-const { myLocation, locations } = useVisitors()
@@ -17,10 +15,5 @@ const { myLocation, locations } = useVisitors()
-
diff --git a/app/pages/portfolio/index.vue b/app/pages/portfolio/index.vue
deleted file mode 100644
index 36dc08e..0000000
--- a/app/pages/portfolio/index.vue
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
- {{ writing.title }}
-
-
-
-
{{ useDateFormat(writing.publishedAt, 'DD MMMM YYYY').value }}
·
-
-
{{ writing.readingTime }}min long
-
-
- {{ writing.description }}
-
-
-
-
-
-
-
-
{{ TAGS.find(color => color.label.toLowerCase() === tag)?.label }}
-
-
-
-
-
-
-
-
-
-
-
-{
- "en": {
- "title": "Writing on my life, development, academic and personal projects and passions",
- "description": "All my thoughts on programming, mathematics, artificial intelligence design, etc., are put together in chronological order. I also write about my projects, my discoveries, and my thoughts.",
- "alert": {
- "title": "Translations alert!",
- "description": "Due to time constraints, all article translations will be available only in English. Thank you for your understanding."
- },
- "tags": "Select tags to filter"
- },
- "fr": {
- "title": "Écrits sur ma vie, le développement, mes projets et mes passions.",
- "description": "Toutes mes réflexions sur la programmation, les mathématiques, la conception de l'intelligence artificielle, etc., sont mises en ordre chronologique. J'écris aussi sur mes projets, mes découvertes et mes pensées.",
- "alert": {
- "title": "Attentions aux traductions!",
- "description": "Par soucis de temps, toutes les traductions des articles seront disponibles uniquement en anglais. Merci de votre compréhension."
- },
- "tags": "Sélectionner des tags pour filtrer"
- },
- "es": {
- "title": "Escritos sobre mi vida, el desarrollo, mis proyectos y mis pasiones.",
- "description": " Todas mis reflexiones sobre la programación, las matemáticas, la conception de la inteligencia artificial, etc. están puestas en orden cronológico. También escribo sobre mis proyectos, mis descubrimientos y mis pensamientos.",
- "alert": {
- "title": "Cuidado con las traducciones !",
- "description": "Por problema de tiempo, los artículos están solo disponibles en ingles. Gracias por vuestra comprensión."
- },
- "tags": "Seleccionar etiquetas para filtrar"
- }
-}
-
-
-
diff --git a/app/pages/projects/[slug].vue b/app/pages/projects/[slug].vue
new file mode 100644
index 0000000..4bb58d9
--- /dev/null
+++ b/app/pages/projects/[slug].vue
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
+ {{ t('back') }}
+
+
+
+
+
+ {{ project.title }}
+
+
+
+
{{ useDateFormat(project.publishedAt, 'DD MMMM YYYY').value }}
+
+
+
+ {{ project.description }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t('name') }}
+
+
+
+
+
+
+
+
+
+
+
+
+{
+ "en": {
+ "alert": {
+ "title": "Translations alert!",
+ "description": "Due to time constraints, all article translations will be available only in English. Thank you for your understanding."
+ },
+ "back": "Go back",
+ "thanks": "Hi! I'm {name}, a Master's student in Applied Mathematics with a passion for AI, statistics, and building cool things with code. {jump} I love turning ideas into real, working systems—whether it's a machine learning model, a self-hosted service, or a data-driven project.{jump} This project is part of my journey to explore and apply what I learn every day. I share it here hoping it'll inspire or help others, just like I've been inspired by the open-source and tech communities. {jump} Feel free to reach out on {linkedin} or {github} if you have questions, feedback, or just want to connect!",
+ "name": "Arthur"
+
+ },
+ "fr": {
+ "alert": {
+ "title": "Attentions aux traductions!",
+ "description": "Par soucis de temps, toutes les traductions des articles seront disponibles uniquement en anglais. Merci de votre compréhension."
+ },
+ "back": "Retourner en arrière",
+ "thanks": "Bonjour ! Je suis {name}, étudiant en Master de Mathématiques Appliquées avec une passion pour l'IA, les statistiques et la création de projets intéressants avec du code. {jump} J'adore transformer des idées en systèmes réels et fonctionnels, que ce soit un modèle de machine learning, un service auto-hébergé ou un projet basé sur les données. {jump} Ce projet fait partie de mon parcours pour explorer et appliquer ce que j'apprends chaque jour. Je le partage ici dans l'espoir qu'il inspire ou aide d'autres personnes, tout comme j'ai été inspiré par les communautés open-source et tech. {jump} N'hésitez pas à me contacter sur {linkedin} ou {github} si vous avez des questions, des retours ou si vous souhaitez simplement échanger !",
+ "name": "Arthur"
+ },
+ "es": {
+ "alert": {
+ "title": "Cuidado con las traducciones!",
+ "description": " Por problemas de tiempo, los artículos solo están disponibles en inglés. Gracias por vuestra comprensión.ug ñeóicula."
+ },
+ "back": "Volver atrás",
+ "thanks": "¡Hola! Soy {name}, estudiante de Máster en Matemáticas Aplicadas con una pasión por la IA, la estadística y la creación de cosas interesantes con código. {jump} Me encanta convertir ideas en sistemas reales y funcionales, ya sea un modelo de aprendizaje automático, un servicio autoalojado o un proyecto basado en datos. {jump} Este proyecto forma parte de mi camino para explorar y aplicar lo que aprendo cada día. Lo comparto aquí con la esperanza de que inspire o ayude a otros, así como yo he sido inspirado por las comunidades de código abierto y tecnología. {jump} No dudes en contactarme en {linkedin} o {github} si tienes preguntas, comentarios o simplemente quieres conectar!",
+ "name": "Arthur"
+ }
+}
+
diff --git a/app/pages/projects/index.vue b/app/pages/projects/index.vue
new file mode 100644
index 0000000..754a57d
--- /dev/null
+++ b/app/pages/projects/index.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+ -
+
+
+
+ {{ project.title }}
+
+
+ {{ project.description }}
+
+
+
+
+
+
+
{{ useDateFormat(project.publishedAt, 'DD MMMM YYYY').value }}
+
+
+
+
+
+
+
{{ TAGS.find(color => color.label.toLowerCase() === tag)?.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+{
+ "en": {
+ "title": "All my projects I have worked on, both academic and personal",
+ "description": "A collection of my projects using R, Python, or web development technologies. These projects span various domains, including data analysis, machine learning, and web applications, showcasing my skills in coding, problem-solving, and project development."
+ },
+ "fr": {
+ "title": "Tous mes projets auxquels j'ai travaillé, académiques et personnels",
+ "description": "Une collection de mes projets réalisés en R, Python, ou en développement web. Ces projets couvrent divers domaines, y compris l'analyse de données, l'apprentissage automatique et les applications web, mettant en avant mes compétences en codage, résolution de problèmes et développement de projets."
+ },
+ "es": {
+ "title": "Todos mis proyectos en los que he trabajado, académicos y personales",
+ "description": "Una colección de mis proyectos realizados en R, Python o tecnologías de desarrollo web. Estos proyectos abarcan diversos campos, como análisis de datos, aprendizaje automático y aplicaciones web, mostrando mis habilidades en programación, resolución de problemas y desarrollo de proyectos."
+ }
+}
+
diff --git a/app/pages/portfolio/[slug].vue b/app/pages/writings/[slug].vue
similarity index 55%
rename from app/pages/portfolio/[slug].vue
rename to app/pages/writings/[slug].vue
index d490588..be2a01b 100644
--- a/app/pages/portfolio/[slug].vue
+++ b/app/pages/writings/[slug].vue
@@ -1,12 +1,12 @@
+
+
+
+
+
+
+
+ -
+
+
+ {{ writing.title }}
+
+
+ {{ writing.description }}
+
+
+
+
+
+
{{ useDateFormat(writing.publishedAt, 'DD MMMM YYYY').value }}
·
+
+
{{ writing.readingTime }}min long
+
+
+
+
+
+
+
{{ TAGS.find(color => color.label.toLowerCase() === tag)?.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+{
+ "en": {
+ "title": "Writings on math, artificial intelligence, development, and my passions.",
+ "description": "All my reflections on programming, mathematics, artificial intelligence design, etc., are organized chronologically.",
+ "alert": {
+ "title": "Attention to translations!",
+ "description": "For time reasons, all article translations will only be available in English. Thank you for your understanding."
+ }
+ },
+ "fr": {
+ "title": "Écrits sur les maths, l'intelligence artificielle, le développement et mes passions.",
+ "description": "Toutes mes réflexions sur la programmation, les mathématiques, la conception de l'intelligence artificielle, etc., sont mises en ordre chronologique.",
+ "alert": {
+ "title": "Attentions aux traductions!",
+ "description": "Par soucis de temps, toutes les traductions des articles seront disponibles uniquement en anglais. Merci de votre compréhension."
+ }
+ },
+ "es": {
+ "title": "Escritos sobre matemáticas, inteligencia artificial, desarrollo y mis pasiones.",
+ "description": "Todas mis reflexiones sobre programación, matemáticas, diseño de inteligencia artificial, etc., están organizadas cronológicamente.",
+ "alert": {
+ "title": "¡Atención a las traducciones!",
+ "description": "Por razones de tiempo, todas las traducciones de los artículos estarán disponibles solo en inglés. Gracias por su comprensión."
+ }
+ }
+}
+
+
+
diff --git a/content.config.ts b/content.config.ts
index 581b681..2d79240 100644
--- a/content.config.ts
+++ b/content.config.ts
@@ -5,9 +5,21 @@ export const collections = {
type: 'page',
source: 'home/*.md',
}),
- portfolio: defineCollection({
+ projects: defineCollection({
type: 'page',
- source: 'portfolio/*.md',
+ source: 'projects/*.md',
+ schema: z.object({
+ slug: z.string(),
+ title: z.string(),
+ description: z.string(),
+ publishedAt: z.date(),
+ tags: z.array(z.string()),
+ cover: z.string(),
+ }),
+ }),
+ writings: defineCollection({
+ type: 'page',
+ source: 'writings/*.md',
schema: z.object({
slug: z.string(),
title: z.string(),
diff --git a/content/portfolio/arthome.md b/content/projects/arthome.md
similarity index 93%
rename from content/portfolio/arthome.md
rename to content/projects/arthome.md
index 2370a64..92b5774 100644
--- a/content/portfolio/arthome.md
+++ b/content/projects/arthome.md
@@ -1,12 +1,11 @@
---
slug: arthome
-title: ArtHome
-description: 🏡 Your personalised home page in your browser
+title: 🏡 ArtHome
+description: Your personalised home page in your browser
publishedAt: 2024/09/04
readingTime: 1
cover: arthome/cover.png
tags:
- - project
- web
---
diff --git a/content/portfolio/artsite.md b/content/projects/artsite.md
similarity index 90%
rename from content/portfolio/artsite.md
rename to content/projects/artsite.md
index 382189d..717d06b 100644
--- a/content/portfolio/artsite.md
+++ b/content/projects/artsite.md
@@ -1,12 +1,11 @@
---
slug: artsite
-title: ArtSite
-description: 🌍 My personal website, my portfolio, and my blog. 🚀
+title: 🌍 ArtSite
+description: My personal website, my portfolio, and my blog.
publishedAt: 2024/06/01
readingTime: 1
cover: artsite/cover.png
tags:
- - project
- web
---
diff --git a/content/portfolio/bikes-glm.md b/content/projects/bikes-glm.md
similarity index 69%
rename from content/portfolio/bikes-glm.md
rename to content/projects/bikes-glm.md
index de87556..0b76b82 100644
--- a/content/portfolio/bikes-glm.md
+++ b/content/projects/bikes-glm.md
@@ -1,11 +1,10 @@
---
slug: bikes-glm
-title: Generalized Linear Models for Bikes prediction
-description: 🚲 Predicting the number of bikes rented in a bike-sharing system using Generalized Linear Models.
+title: 🚲 Generalized Linear Models for Bikes prediction
+description: Predicting the number of bikes rented in a bike-sharing system using Generalized Linear Models.
publishedAt: 2025/01/24
readingTime: 1
tags:
- - project
- r
- data
- maths
@@ -15,5 +14,5 @@ The project was done as part of the course `Generalised Linear Model` at the Par
You can find the code here: [GLM Bikes Code](https://github.com/ArthurDanjou/Studies/blob/master/M1/General%20Linear%20Models/Projet/GLM%20Code%20-%20DANJOU%20%26%20DUROUSSEAU.rmd)
-