# [Arthur Danjou | Portfolio 2024](https://arthurdanjou.fr/) ![Portfolio Screenshot](public/projects/preview.png) My professional portfolio built with modern Nuxt.js technologies, showcasing projects, skills, and experience. [![Nuxt.js](https://img.shields.io/badge/Nuxt.js-00DC82?style=for-the-badge&logo=nuxt.js&logoColor=white)](https://nuxt.com/) [![Vue.js](https://img.shields.io/badge/Vue.js-4FC08D?style=for-the-badge&logo=vue.js&logoColor=white)](https://vuejs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/) [![TailwindCSS](https://img.shields.io/badge/Tailwind_CSS-38B2AC?style=for-the-badge&logo=tailwind-css&logoColor=white)](https://tailwindcss.com/)
## 📋 Table of Contents - [Features](#-features) - [Tech Stack](#️-tech-stack) - [Project Structure](#-project-structure) - [Adding Content](#-adding-content) - [Projects](#projects) - [Writings](#writings) - [Uses Page](#uses-page) - [Integrations](#-integrations) - [License](#-license) - [Contact](#-contact) ## ✨ Features - **Responsive Design** - Fully responsive layout that works on all devices - **i18n Support** - Multilanguage content with Nuxt i18n - **Content Management** - Easy content editing with Nuxt Content and Nuxt Studio - **Modern Styling** - Beautiful UI built with Tailwind CSS and SASS - **Performance Optimized** - Fast loading times and SEO optimized - **Analytics** - WakaTime integration to track coding statistics - **Discord Integration** - Real-time Discord status display - **CI/CD** - Automated deployment with NuxtHub ## ⚒️ Tech Stack - **UI Framework** → [Vue.js 3](https://vuejs.org/) - **Framework** → [Nuxt 3](https://nuxt.com/) - **Content Management** → [Nuxt Content](https://content.nuxtjs.org/) - **Design System** → [NuxtUI](https://ui.nuxt.com/) - **CMS & Editing** → [Nuxt Studio](https://nuxt.studio) - **Language** → [TypeScript](https://www.typescriptlang.org/) - **Deployment** → [NuxtHub](https://hub.nuxt.com/) - **Styling** → [Sass](https://sass-lang.com/) & [Tailwind CSS](https://tailwindcss.com/) - **Package Manager** → [pnpm](https://pnpm.io/) - **Internationalization** → [Nuxt i18n](https://i18n.nuxtjs.org/) - **Database ORM** → [Drizzle](https://orm.drizzle.team/) - **Composables** → [VueUse](https://vueuse.org/) - **Validation** → [Zod](https://zod.dev/) - **Globe Visualization** → [Cobe](https://github.com/shuding/cobe) - **Icons** → [Iconify](https://iconify.design/) ## 📂 Project Structure ``` ├── assets/ # Static assets like global styles ├── components/ # Vue components ├── content/ # Markdown content for the portfolio │ ├── projects/ # Portfolio projects │ ├── writings/ # Writings │ └── uses/ # Uses page items ├── layouts/ # Page layouts ├── pages/ # Application pages ├── public/ # Public static files │ ├── projects/ # Projects images │ └── writings/ # Writings images ├── server/ # Server API routes ├── utils/ # Utility functions ├── .env.example # Example environment variables ├── nuxt.config.ts # Nuxt configuration ├── package.json # Dependencies and scripts └── README.md # Project documentation ``` ## 🍱 Adding Content ### Projects 1. Create a new `.md` file in the `/content/projects/` directory 2. Follow the structure of existing projects: ```md --- --- slug: project-slug title: Project Title description: A brief description of the project publishedAt: YYYY/MM/DD readingTime: 1 cover: project-slug/cover.png tags: - web --- ## Project content goes here Detailed description and information about the project. ``` 3. Add related project images to `/public/projects/project-slug/` ### Writings 1. Create a new `.md` file in the `/content/writings/` directory 2. Follow the structure of existing projects: ```md --- slug: article-slug title: The title of the article description: A brief description of the article readingTime: 1 publishedAt: YYYY/MM/DD cover: article-slug/cover.png tags: - tag1 - tag2 - tag3 --- ## Writing content goes here Detailed description and information about the article. ``` 3. Add related writing images to `/public/writings/article-slug/` ### Uses Page Add new items to the `/content/uses/` directory following the existing pattern: ```json { "name": "Name of the item", "description": { "en": "Item description in English", "fr": "Item description in French", "es": "Item description in Spanish" }, "category": "Item category name" } ``` ## 🔌 Integrations - **WakaTime** - Track coding time and statistics - **Discord** - Display real-time Discord status - **Nuxt Studio** - Headless CMS for content management - **Nuxt i18n** - Internationalization support ## 📄 License [MIT](./LICENSE) © Arthur Danjou ## 📬 Contact - Website: [arthurdanjou.fr](https://arthurdanjou.fr) - GitHub: [@ArthurDanjou](https://github.com/ArthurDanjou) - LinkedIn: [Arthur Danjou](https://linkedin.com/in/arthurdanjou)