◈
Microsoft Fluent Icons
Fluent UI System Icons — Open source, MIT License
Identifiant de bibliothèque : Les icônes sont référencées avec le préfixe fluent: (ex : fluent:map-24-regular). Dans l'app React Native, elles sont importées via @expo/vector-icons ou la lib @fluentui/react-native-icons.
Style principal
Les icônes sont utilisées en style Regular (trait fin, contour) pour les états neutres et Filled (plein) pour les états actifs, sélectionnés ou importants.
fluent:search-20-regular (inactif)
fluent:search-20-filled (actif)
Tailles disponibles
Fluent Icons propose des icônes optimisées à des tailles fixes : 12, 16, 20, 24, 28, 32, 48px. Chaque taille est dessinée pixel-perfect à sa résolution cible.
fluent:location-12-filled
fluent:gauge-20-regular
fluent:map-24-regular
Fallback & alternatives
Pour les icônes spécifiques au surf non couvertes par Fluent (ex : vague, marée), on utilise Streamline Icons (ex : streamline:tidal-wave) ou Carbon Icons (IBM).
streamline:tidal-wave
carbon:user-profile
Aperçu de la bibliothèque
🗺map
🔍search
🌤weather
👤profile
📍location
→arrow-rtl
☀️sunny
🌊tidal-wave
⚡gauge
💧water
🌡temperature
☁cloud
📅calendar
⊕add
⊗dismiss
✓checkmark
↑arrow-up
↓arrow-down
◎target
●circle-fill
○circle
□square
■square-fill
★star-fill
☆star
♡heart
♥heart-fill
⚙settings
🔔alert
⊞grid
⊟list
⊡filter
Spécifications techniques
Source
Fluent Design System (Microsoft)
Bibliothèque
@fluentui/react-native-icons
Format
SVG vectoriel (inline)
Dossier source
swellr-expo/assets/navigation-icons/
Couleur active
#028490 (teal primary)
Couleur inactive
#757575 (grey 500)
Taille de rendu
width: 31 · height: 31 (tab bar)
Fichiers
fluent_map.svg · fluent_search.svg · fluent_weather-cloud.svg · fluent_user-profile.svg
Composant
BottomTabNavigator.styles.ts
Navigation
🗺
Carte
fluent:map-24-regular
24px · teal
🔍
Recherche
fluent:search-20-filled
20px · teal
🌤
Météo
fluent:weather-partly-cloudy-day-24-regular
24px · teal
👤
Profil
carbon:user-profile
24px · teal
📅
Calendrier
fluent:calendar-20-regular
20px · grey
⚙
Paramètres
fluent:settings-24-regular
24px · grey
Actions
⊕
Ajouter
fluent:add-24-regular
24px · teal
⊗
Supprimer
fluent:delete-24-regular
24px · error
◎
Partager
fluent:share-24-regular
24px · navy
⊡
Copier
fluent:copy-24-regular
24px · grey
✓
Valider
fluent:checkmark-24-regular
24px · teal
✗
Annuler
fluent:dismiss-24-regular
24px · grey
Spots & Sessions
🌊
Vague / Surf
streamline:tidal-wave
32px · teal
📍
Localisation
fluent:location-12-filled
12–24px · blue
📅
Événement
fluent:calendar-20-regular
20px · green
🏄
Session
fluent:person-wave-24
24px · orange
👥
Groupe
fluent:people-24-regular
24px · grey
△
Spot actif
fluent:flag-24-filled
24px · teal
Météo & Conditions
☀️
Soleil
fluent:weather-sunny-20-regular
20px · school
☁
Nuage / Vent
fluent:cloud-words-28-regular
28px · grey
🌊
Marée
streamline:tidal-wave
24px · teal
🌡
Température
fluent:temperature-24-regular
24px · error
💧
Eau / Pluie
fluent:water-20-regular
20px · blue
⚡
Intensité
fluent:gauge-20-regular
20px · teal
Social
♥
Like
fluent:heart-24-filled
24px · error
♡
Like inactif
fluent:heart-24-regular
24px · grey
💬
Commentaire
fluent:chat-24-regular
24px · teal
◎
Partager
fluent:share-android-24
24px · navy
👥
Amis
fluent:people-add-24-regular
24px · green
★
Favori
fluent:star-24-filled
24px · session
UI Système
→
Flèche droite
fluent:ios-arrow-rtl-24-filled
24px · grey
✗
Fermer
fluent:dismiss-24-regular
24px · grey
≡
Menu
fluent:navigation-24-regular
24px · teal
⚙
Paramètres
fluent:settings-24-regular
24px · grey
🔔
Notification
fluent:alert-24-regular
24px · teal
⊟
Filtres
fluent:filter-24-regular
24px · grey
📍
16px
XS — Très petite
Tags, inline, labels, chips compactes
🔍
20px
SM — Small
Navigation secondaire, actions tertiaires, métadonnées
🗺
24px
MD — Standard
Navigation principale, bottom bar, actions primaires
🌤
32px
LG — Medium
Cards, headers de section, indicateurs météo
🌊
40px
XL — Large
Permissions système, états vides, onboarding
🏄
48px
2XL — Illustrations
Illustrations légères, splash screens, hero icons
Taille minimale tactile : Sur mobile, toute zone interactive contenant une icône doit avoir une zone de toucher minimale de 44x44px, même si l'icône est de 16 ou 20px. Utiliser du padding pour agrandir la zone de tap.
🗺
Teal — Actif
#028490
Navigation active, actions primaires, éléments interactifs principaux
🗺
Grey — Inactif
#637887
Navigation inactive, icônes secondaires, états désactivés
🗺
Blanc — Sur fond sombre
#F8F8F8
Icônes sur header sombre, bottom sheets foncés, modals plein écran
🏄
Orange — Sessions
#F05906
Icônes liées aux sessions surf, actions imminentes, urgences
📅
Vert — Événements
#4CAF00
Événements écolo, confirmations, états de succès
Palette sémantique complète
🏄 Session — #F05906
📅 Événement — #4CAF00
📍 Localisation — #2D69C9
⊗ Suppression — #C62828
🏫 École surf — #FF9437
🛒 Shop — #9E340E
ℹ Info — #4FA3B1
| Icône |
Nom Fluent |
Contexte d'usage |
Couleur |
Taille min. |
Taille max. |
Style |
| 🗺 |
fluent:map-24-regular |
Navigation — onglet Carte |
#028490 |
20px |
32px |
Regular / Filled (actif) |
| 🔍 |
fluent:search-20-filled |
Barre de recherche, header |
#028490 |
16px |
24px |
Filled |
| 🌤 |
fluent:weather-partly-cloudy-day-24-regular |
Onglet Météo, prévisions |
#028490 |
24px |
48px |
Regular / Filled (actif) |
| 👤 |
carbon:user-profile |
Onglet Profil, compte utilisateur |
#637887 / #028490 |
20px |
40px |
Regular / Filled (actif) |
| 📍 |
fluent:location-12-filled |
Marqueur de spot sur carte, adresse |
#2D69C9 |
12px |
24px |
Filled obligatoire |
| → |
fluent:ios-arrow-rtl-24-filled |
Navigation avant, lien "voir plus" |
#637887 |
16px |
24px |
Filled |
| ☀️ |
fluent:weather-sunny-20-regular |
Ensoleillement, conditions météo |
#FF9437 |
20px |
40px |
Regular |
| 🌊 |
streamline:tidal-wave |
Marée, hauteur des vagues, surf |
#028490 |
24px |
48px |
Regular |
| ⚡ |
fluent:gauge-20-regular |
Intensité de vague, niveau d'affluence |
#028490 |
16px |
32px |
Regular |
| 💧 |
fluent:water-20-regular |
Température de l'eau, précipitations |
#2D69C9 |
16px |
32px |
Regular |
| 🌡 |
fluent:temperature-24-regular |
Température air / eau |
contextuelle |
20px |
32px |
Regular |
| ☁ |
fluent:cloud-words-28-regular |
Couverture nuageuse, vitesse du vent |
#637887 |
24px |
40px |
Regular |
| 📅 |
fluent:calendar-20-regular |
Dates de session, événements |
#4CAF00 (event) / #637887 |
16px |
24px |
Regular / Filled (actif) |
Attention : Ne jamais redimensionner une icône en dehors des tailles définies (16, 20, 24, 32, 40, 48px). Les SVG Fluent sont optimisés pour ces tailles précises — un redimensionnement intermédiaire dégrade la netteté sur écran retina.
Bonnes et mauvaises pratiques
🗺
Icône 24px teal sur fond blanc — navigation active
🗺
Icône 20px grey — navigation inactive
🏄
Couleur sémantique contextuelle (session = orange)
🔍
Icône blanche sur fond sombre
🗺
Taille non standard (18px) — utiliser 16 ou 20px
🔍
Couleur gris clair non définie — manque de contraste
🗺
Icône pivotée — ne jamais transformer les icônes
🗺
Couleur session orange sur icône de navigation