Files
swift_companion/swiftyCompanion/README.md
2026-09-29 08:55:59 +02:00

3.2 KiB
Raw Blame History

Swifty Companion — dépôt de rendu (42)

Dossier destiné au code évalué en soutenance. Inspiré des README mobileModuleXX/ de piscine_mobile, version allégée.

Contenu attendu

Élément Détail
Dossier de rendu swiftyCompanion/ (ce répertoire)
Projet Application mobile (Flutter recommandé après la piscine) — nom suggéré : swifty_companion
Sujet docs/sujets/swifty-companion.md

Le dépôt Git à la racine swifty_companion/ peut aussi contenir docs/ ; seul ce qui est dans le repo compte à la soutenance — garde ici tout le nécessaire pour flutter run.

Création du projet (quand tu es prêt — étape 1)

Depuis ce dossier :

cd swiftyCompanion
flutter create swifty_companion
cd swifty_companion
flutter run -d <device>

Vérifier l’environnement :

flutter doctor
flutter devices

Doc détaillée machine : piscine_mobile — Ubuntu natif.

Secrets — .env

  1. Créer une application sur profile.intra.42.fr/oauth/applications.
  2. Copier .env.example vers .env à la racine du repo ou dans swifty_companion/ (selon où tu charges les variables).
  3. Ne jamais committer .env (déjà dans .gitignore).

Variables typiques : CLIENT_ID, CLIENT_SECRET, REDIRECT_URI (adapter au package / schéma OAuth de ton app).

Critères obligatoires (rappel)

# À montrer en soutenance
1 ≥ 2 vues
2 Erreurs gérées : login inconnu, réseau, etc.
3 Vue 2 : infos du login si existant
4 ≥ 4 champs (login, email, mobile, level, location, wallet, evaluations…) + photo
5 Skills : niveau + pourcentage
6 Projets terminés, y compris failed
7 Retour vers la vue 1
8 Layout adaptatif (tailles / plateformes)
9 Un seul token OAuth réutilisé — pas un token par requête API

OAuth : Intra OAuth2 — voir doc API 42.

Bonus (si obligatoire parfait)

  • Renouvellement automatique du token à expiration ; l’app reste utilisable.

Récapitulatif correction (peer-eval)

# Test Démo rapide
1 cd swifty_companion && flutter test Tests passent (si tu en ajoutes)
2 flutter run -d <device> Vue 1 : saisie login valide → vue 2
3 (même session) Vue 2 : photo + ≥ 4 infos + skills + projets (dont failed)
4 Login invalide Message d’erreur clair, pas de crash
5 Hors ligne / API coupée Erreur réseau gérée
6 Navigation Retour vue 1, nouvelle recherche
7 Petit écran / rotation (si possible) UI lisible (layout flexible)
8 Bonus uniquement si tout OK Laisser expirer le token ou forcer refresh → app toujours OK

Ordre de démo suggéré : login valide (toi ou un pair) → parcours skills / projets → login faux → couper le réseau → retour recherche.

Liens