Files
artsite/README.md
2025-04-06 23:03:23 +02:00

165 lines
5.2 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<div align="center">
# [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/)
</div>
## 📋 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)