generated from vincent/template-projet
Initial commit
This commit is contained in:
0
.env.example
Normal file
0
.env.example
Normal file
31
.gitea/workflows/deploy.yml
Normal file
31
.gitea/workflows/deploy.yml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
name: Deploy
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- dev
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set environment
|
||||||
|
id: env
|
||||||
|
run: |
|
||||||
|
if [ "${{ github.ref_name }}" = "main" ]; then
|
||||||
|
echo "ENV=prod" >> $GITHUB_OUTPUT
|
||||||
|
echo "COMPOSE_FILE=docker/docker-compose.prod.yml" >> $GITHUB_OUTPUT
|
||||||
|
else
|
||||||
|
echo "ENV=dev" >> $GITHUB_OUTPUT
|
||||||
|
echo "COMPOSE_FILE=docker/docker-compose.yml" >> $GITHUB_OUTPUT
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
run: |
|
||||||
|
docker compose -f ${{ steps.env.outputs.COMPOSE_FILE }} pull
|
||||||
|
docker compose -f ${{ steps.env.outputs.COMPOSE_FILE }} up -d --remove-orphans
|
||||||
|
docker image prune -f
|
||||||
7
.gitignore
vendored
Normal file
7
.gitignore
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
.env
|
||||||
|
node_modules/
|
||||||
|
__pycache__/
|
||||||
|
*.pyc
|
||||||
|
.DS_Store
|
||||||
|
dist/
|
||||||
|
build/
|
||||||
60
CLAUDE.md
Normal file
60
CLAUDE.md
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
# [NOM DU PROJET]
|
||||||
|
|
||||||
|
## Projet
|
||||||
|
[Une phrase : ce que fait l'app, pour qui, pourquoi.]
|
||||||
|
|
||||||
|
## Stack
|
||||||
|
- Runtime : Node 20 / Python 3.11 / ...
|
||||||
|
- Framework : ...
|
||||||
|
- Base de données : MariaDB / PostgreSQL / SQLite
|
||||||
|
- Déploiement : Docker → Synology NAS (rigolet.tech)
|
||||||
|
|
||||||
|
## Structure
|
||||||
|
```
|
||||||
|
src/
|
||||||
|
components/ # Exemple de composant : src/components/UserCard.tsx
|
||||||
|
api/ # Exemple de route : src/api/users/route.ts
|
||||||
|
stores/ # State management
|
||||||
|
docker/
|
||||||
|
docker-compose.yml
|
||||||
|
.gitea/
|
||||||
|
workflows/
|
||||||
|
deploy.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Commandes
|
||||||
|
```bash
|
||||||
|
npm install # Installer les dépendances
|
||||||
|
npm run dev # Lancer en développement
|
||||||
|
npm run build # Build production
|
||||||
|
npm test # Lancer UN test ciblé, pas toute la suite
|
||||||
|
npm run typecheck # IMPORTANT : lancer après chaque série de modifications
|
||||||
|
```
|
||||||
|
|
||||||
|
## Code style
|
||||||
|
- ES modules (import/export), jamais CommonJS (require)
|
||||||
|
- Functional components + hooks uniquement, jamais de class components
|
||||||
|
- TypeScript strict activé
|
||||||
|
- Destructure les imports quand possible
|
||||||
|
- IMPORTANT : ne jamais considérer une tâche terminée sans typecheck qui passe
|
||||||
|
|
||||||
|
## Git
|
||||||
|
- Branches : main (prod) → dev (dev)
|
||||||
|
- Commits : feat: / fix: / docs: / refactor: / chore:
|
||||||
|
- IMPORTANT : toujours créer une nouvelle branche pour chaque tâche
|
||||||
|
- IMPORTANT : ne jamais pusher directement sur main
|
||||||
|
|
||||||
|
## Déploiement
|
||||||
|
Pipeline automatique via Gitea Actions.
|
||||||
|
Chaque push sur develop déclenche un déploiement sur le NAS.
|
||||||
|
Voir @.gitea/workflows/deploy.yml pour le détail du pipeline.
|
||||||
|
|
||||||
|
## Références
|
||||||
|
- Vue d'ensemble du projet : @README.md
|
||||||
|
- Variables d'environnement : @.env.example
|
||||||
|
|
||||||
|
## Ce que Claude doit savoir sur CE projet
|
||||||
|
- [Ajoute ici les erreurs que Claude répète spécifiquement sur ce projet]
|
||||||
|
- [Ex : "ne pas utiliser axios, on utilise fetch natif"]
|
||||||
|
- [Ex : "la BDD utilise snake_case, le code TypeScript utilise camelCase"]
|
||||||
|
- [Ex : "les tests sont dans __tests__/, pas dans src/"]
|
||||||
13
README.md
Normal file
13
README.md
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# Nom du projet
|
||||||
|
|
||||||
|
## Description
|
||||||
|
[Description du projet]
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
```bash
|
||||||
|
npm install
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
## Déploiement
|
||||||
|
Via Gitea Actions → Docker → NAS (rigolet.tech)
|
||||||
13
docker/docker-compose.yml
Normal file
13
docker/docker-compose.yml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: your-app:latest
|
||||||
|
container_name: your-app
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
Reference in New Issue
Block a user