94 lines
2.4 KiB
Markdown
94 lines
2.4 KiB
Markdown
# Dofus Manager
|
|
|
|
Application de gestion de personnages, comptes et équipes pour Dofus.
|
|
|
|
## Prérequis
|
|
|
|
- Node.js 20+
|
|
- pnpm 9+
|
|
- Docker & Docker Compose
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
# Cloner le repo
|
|
git clone <repo-url>
|
|
cd dofus-manager2
|
|
|
|
# Installer les dépendances
|
|
pnpm install
|
|
|
|
# Copier les variables d'environnement
|
|
cp .env.example .env
|
|
```
|
|
|
|
## Développement local
|
|
|
|
```bash
|
|
# Lancer PostgreSQL
|
|
docker compose -f docker/docker-compose.dev.yml up -d
|
|
|
|
# Appliquer les migrations
|
|
pnpm prisma migrate dev
|
|
|
|
# Lancer le serveur de développement
|
|
pnpm dev
|
|
```
|
|
|
|
L'application est accessible sur `http://localhost:3000`
|
|
|
|
## Scripts disponibles
|
|
|
|
| Script | Description |
|
|
|--------|-------------|
|
|
| `pnpm dev` | Lancer le serveur de développement |
|
|
| `pnpm build` | Build de production |
|
|
| `pnpm start` | Lancer le build de production |
|
|
| `pnpm lint` | Vérifier le code avec Biome |
|
|
| `pnpm lint:fix` | Corriger les erreurs de lint |
|
|
| `pnpm format` | Formater le code |
|
|
| `pnpm typecheck` | Vérifier les types TypeScript |
|
|
| `pnpm test` | Lancer les tests |
|
|
| `pnpm prisma studio` | Ouvrir Prisma Studio |
|
|
| `pnpm prisma migrate dev` | Créer/appliquer les migrations |
|
|
|
|
## Variables d'environnement
|
|
|
|
| Variable | Description | Exemple |
|
|
|----------|-------------|---------|
|
|
| `DATABASE_URL` | URL de connexion PostgreSQL | `postgresql://postgres:postgres@localhost:5432/dofus_manager` |
|
|
| `APP_URL` | URL de l'application | `http://localhost:3000` |
|
|
| `NODE_ENV` | Environnement | `development` / `production` |
|
|
| `SESSION_SECRET` | Clé secrète pour les sessions (min 32 chars) | `change-me-to-a-random-string` |
|
|
|
|
## Structure du projet
|
|
|
|
```
|
|
├── .gitea/workflows/ # CI/CD Gitea Actions
|
|
├── docker/ # Dockerfile et docker-compose
|
|
├── prisma/ # Schema et migrations Prisma
|
|
├── src/
|
|
│ ├── components/ # Composants React
|
|
│ ├── lib/ # Utilitaires et services
|
|
│ ├── routes/ # Pages et API (TanStack Router)
|
|
│ └── styles/ # CSS global
|
|
└── tests/ # Tests unitaires et E2E
|
|
```
|
|
|
|
## Docker
|
|
|
|
```bash
|
|
# Build l'image
|
|
docker build -f docker/Dockerfile -t dofus-manager .
|
|
|
|
# Lancer en production
|
|
docker compose -f docker/docker-compose.yml up -d
|
|
```
|
|
|
|
## Tech Stack
|
|
|
|
- **Frontend:** React 19, TanStack Router, TanStack Query, Tailwind CSS, shadcn/ui
|
|
- **Backend:** TanStack Start, Prisma
|
|
- **Database:** PostgreSQL 16
|
|
- **DevOps:** Docker, Gitea Actions
|