An open API service indexing awesome lists of open source software.

https://github.com/arthurdanjou/artsite

🌍 My personal website, my portfolio, and my blog. 🚀 Built and powered by Nuxt Stack (Content, Hub, Studio) & Nitro
https://github.com/arthurdanjou/artsite

drizzle drizzle-kit drizzle-orm nitro nuxt nuxt3 nuxthub nuxtjs nuxtui typescript unjs-nitro vuejs zod

Last synced: 4 days ago
JSON representation

🌍 My personal website, my portfolio, and my blog. 🚀 Built and powered by Nuxt Stack (Content, Hub, Studio) & Nitro

Awesome Lists containing this project

README

          

# [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)