Skip to content

LlamasScripters/ASP-hub

Repository files navigation

ASP-hub

Project Setup & Usage

Pré-requis

Démarrage du projet (mode recommandé)

Le projet doit être lancé via Docker Compose pour fonctionner correctement en développement (reverse proxy Nginx, BDD, etc.).

Premier démarrage

  1. Configurer les variables d'environnement :

    cp server/.env.example server/.env
    # Éditer server/.env avec vos valeurs
  2. Démarrer le développement :

    npm run dev
  3. Lancer les migrations :

    npm run db:migrate

Démarrages suivants

# Commande principale de développement (avec watch mode)
npm run dev

Points d'accès :

Installation manuelle (cas particulier)

⚠️ Ce mode n'est à utiliser qu'en cas de besoin spécifique (débogage, développement isolé, etc.). L'accès au front ne se fera alors pas via Nginx.

Il faudra tout de même lancer des bases de données pour pouvoir lancer le projet.

  1. Installe la bonne version de Node.js
    nvm install
    nvm use
  2. Installe les dépendances à la racine (hooks, lint, etc.)
    npm install
  3. Installe les dépendances du client et du serveur
    cd client && npm install
    cd ../server && npm install

Démarrage manuel

Scripts utiles

Développement

  • Démarrer le développement :

    npm run dev
  • Logs des services :

    npm run dev:logs
  • Redémarrage forcé :

    npm run dev:build
  • Arrêter les services :

    npm run dev:down

Code Quality

  • Lint (racine, client, server) :
    npm run lint
    npm run lint:fix
  • Build client :
    cd client
    npm run build
  • Build server :
    cd server
    npm run build
  • Tests client :
    cd client
    npm run test

Base de données

  • Lancer les migrations :

    npm run db:migrate
  • Seed la base de données :

    npm run db:seed
  • Reset la base de données :

    npm run db:reset
  • Fresh (reset puis seed) :

    npm run db:fresh
  • Drizzle Studio :

    npm run db:studio
  • Générer des migrations :

    docker compose -f compose.dev.yml exec server npm run db:generate

Application mobile

L'application mobile est située dans client/my-app.

Prérequis

  • Node.js et npm
  • Android Studio (pour la plateforme Android)
  • macOS & Xcode (pour la plateforme iOS)
  • Capacitor CLI (global) : npm install -g @capacitor/cli

Installation

cd client/my-app
npm install
npx cap sync

Lancement

  • Web (aperçu en développement) :

    npm start
  • Android :

    npx cap open android
    # Construire et lancer depuis Android Studio

ou directement :

npx cap run android -l --external

Le fichier android/local.properties (chemin SDK) n'est pas versionné et est généré automatiquement.

  • iOS :
    npx cap open ios
    # Construire et lancer depuis Xcode
    ou directement :
    npx cap run ios -l --external

Tests serveur

# Aller dans le dossier server
cd server

# Lancer tous les tests
npm test

# Lancer une catégorie spécifique
node --test tests/unit/
node --test tests/functional/
node --test tests/interface/

# Lancer un fichier spécifique
npx tsx --test tests/unit/password.test.ts

Tests client

# Aller dans le dossier client
cd client

# Lancer tous les tests
npx playwright test

Documentation

Google Drive (autorisations nécessaires)

Lien du Drive contenant les documents du projet : https://drive.google.com/drive/folders/1ZqHodTuhoczDxv4GG3eN2YHtUHpXcVXY

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •