Une application mobile moderne pour explorer le profil des étudiants de l'école 42
📱 Fonctionnalités • 🛠️ Technologies • 🚀 Installation • 📖 Utilisation • 🔑 Configuration API • 🎯 Bonus
- Recherche instantanée d'étudiants par login 42
- Interface intuitive et responsive
- Gestion des erreurs en temps réel
- Informations personnelles : Nom, prénom, campus
- Cursus académique : Niveau actuel et progression
- Projets réalisés : Statut détaillé (validé ✅, en cours 🔄, échoué ❌)
- Compétences : Niveaux d'acquisition avec visualisation
- Coalition : Informations sur l'évolution dans l'école
- Interface internationalisée avec i18n
- Support de multiples langues
- Formats régionaux adaptés
- Graphiques interactifs pour les compétences
- Parallax scrolling pour une expérience immersive
- Animations fluides et transitions élégantes
- React Native 0.74.5 - Framework cross-platform
- Expo 51.0.28 - Outils de développement et déploiement
- TypeScript 5.3.3 - Typage statique pour la fiabilité
- React Navigation - Navigation native fluide
- React Native Reanimated - Animations performantes
- React Native Chart Kit - Visualisations de données
- Expo Vector Icons - Icônes natives
- Axios - Client HTTP robuste
- AsyncStorage - Stockage local persistant
- i18next - Internationalisation complète
- Jest - Tests unitaires
- ESLint - Qualité du code
- Babel - Transpilation moderne
- Node.js 18+
- npm ou yarn
- Expo CLI
- iOS Simulator (macOS) ou Android Studio
# Cloner le repository
git clone https://github.com/votre-username/swifty-companion.git
cd swifty-companion
# Installer les dépendances
npm install
# Démarrer l'application
npm startnpm start # Démarrer Expo
npm run android # Lancer sur Android
npm run ios # Lancer sur iOS
npm run web # Lancer sur le web
npm test # Exécuter les tests
npm run lint # Vérifier la qualité du code- Lancez l'application
- Entrez le login 42 de l'étudiant recherché
- Appuyez sur "Rechercher"
- Onglet Profil : Informations personnelles et académiques
- Onglet Projets : Détail des projets avec statuts
- Onglet Compétences : Visualisation des niveaux
- Onglet Coalition : Évolution dans l'école
- Swipe entre les sections
- Tap pour développer les détails
- Pull-to-refresh pour actualiser
-
Connexion à l'Intranet
- Connectez-vous à intra.42.fr
-
Création d'Application OAuth
- Allez dans "Profile" → "Settings" → "API"
- Cliquez sur "New Application"
- Remplissez les informations requises
-
Récupération des Clés
- Copiez votre
client_id - Copiez votre
client_secret
- Copiez votre
-
Configuration dans l'App
- Créez un fichier
.envà la racine - Ajoutez vos clés :
- Créez un fichier
CLIENT_ID=votre_client_id
CLIENT_SECRET=votre_client_secret- Authentification automatique OAuth2
- Renouvellement automatique des tokens expirés
- Stockage sécurisé des informations d'authentification
- ✅ Actualisation automatique des tokens API 42
- ✅ Gestion intelligente des erreurs réseau
- ✅ Interface adaptative pour tous les écrans
- ✅ Performance optimisée avec React Native 0.74.5
- ✅ Tests automatisés avec Jest
- ✅ Linting strict pour la qualité du code
- Expo Router pour la navigation
- Hooks personnalisés pour la logique métier
- Composants réutilisables et testables
- Gestion d'état optimisée
- Support TypeScript complet