# Concepts innovants — Veza > Specification detaillee des fonctionnalites qui n'existent nulle part ailleurs. > Ce document sert de reference pour l'implementation future. --- ## 1. Systeme de patine de l'interface ### Concept L'interface de Veza evolue visuellement avec le temps et l'usage, comme un objet physique qui se patine. Chaque compte a une interface unique, forgee par son histoire d'utilisation. ### Variables de patine ``` account_age_days → anciennete du compte en jours total_play_time_hours → temps d'ecoute cumule total_uploads → nombre de morceaux uploades total_messages → nombre de messages envoyes total_exchanges → nombre de trocs realises zone_usage[zone_id] → nombre d'interactions par zone de l'interface ``` ### Niveaux de patine | Niveau | Condition | Effet visuel | |--------|-----------|-------------| | 0 — Neuf | Compte < 7 jours | Interface froide, surfaces lisses, pas de grain | | 1 — Rode | Compte > 30 jours + 10h d'ecoute | Leger rechauffement des tons, grain subtil apparait | | 2 — Vecu | Compte > 90 jours + 50h d'ecoute + 5 uploads | Tons cuivres plus profonds, textures plus riches, micro-details | | 3 — Patine | Compte > 180 jours + 200h + 20 uploads | Palette pleinement rechauffee, usure visible sur les elements frequents | | 4 — Heritage | Compte > 365 jours + 500h + activite communautaire | Patine complete, details uniques, effet "objet de famille" | ### Regles de patine par zone Chaque zone de l'interface se patine independamment selon son usage : - Le player se patine le plus vite (element le plus utilise) - La barre de navigation se patine selon les onglets frequentes - Le profil se patine selon l'activite de publication - Les zones peu visitees restent "neuves" — creant un contraste naturel ### Contraintes techniques - La patine est un calcul cote client, base sur des compteurs stockes dans le profil - Pas de requete supplementaire au serveur — les compteurs sont inclus dans le payload d'authentification - Les changements visuels sont des CSS custom properties recalculees au login - Cout en performance : negligeable (quelques calculs au chargement, 0 impact ensuite) - La patine n'est jamais reversible ni achetable — elle est le reflet du temps reel ### Ce que la patine N'EST PAS - Pas un systeme de niveaux / XP / gamification (pas de notification "vous avez atteint le niveau 3 !") - Pas un badge ou un statut visible par les autres - Pas un avantage fonctionnel (pas de features debloquees) - Le changement est si progressif que l'utilisateur ne le "remarque" pas consciemment — il le ressent --- ## 2. Recherche comme exploration spatiale ### Concept L'onglet de decouverte se transforme progressivement en un espace navigable ou chaque artiste est un lieu a explorer, avec un paysage sonore en temps reel. ### Version 1 — Recherche enrichie (implementable maintenant) La recherche classique par tags/genres, mais avec une presentation visuelle plus riche que la norme : - Les resultats ne sont pas une liste verticale mais un arrangement spatial (grille organique, pas de rangees uniformes) - Chaque resultat a une micro-visualisation du son (petite waveform, couleur dominante de la pochette) - Le survol d'un resultat declenche un preview audio de 5 secondes - Les resultats se regroupent visuellement par affinite (genres proches = resultats proches dans l'espace) ### Version 2 — Carte des artistes (moyen terme) Un canvas 2D navigable : - Chaque artiste est un point dans un espace 2D - La position est determinee par les tags/genres (pas par popularite, pas par ML) - L'utilisateur peut zoomer et se deplacer (pan/zoom fluide) - En zoomant, les points deviennent des cartes avec pochette + nom + preview - Un algorithme deterministe de placement (t-SNE ou UMAP applique aux vecteurs de tags, pas de tracking comportemental) - Le point de depart de l'exploration est determine par les genres preferes de l'utilisateur (declares, pas devines) ### Version 3 — Paysage sonore (long terme) Un monde genere proceduralement : - Chaque zone a une ambiance sonore (fond ambient genere a partir des morceaux des artistes de la zone) - Le terrain est genere a partir de la densite d'artistes (plus d'artistes = zone plus "peuplee" visuellement) - L'utilisateur se deplace librement (clavier/touch/souris) - Decouvrir un artiste = s'approcher d'un point lumineux dans le paysage - Le paysage est different pour chaque utilisateur (point de depart aleatoire, mais la topologie est la meme) ### Version 4 — Monde persistant (vision finale) - Les artistes peuvent customiser leur "lieu" dans le monde - Les zones actives (artistes qui publient souvent) sont plus vivantes visuellement - Les collaborations entre artistes creent des chemins visibles entre leurs lieux - L'exploration a une memoire : les lieux deja visites sont marques (comme une carte qu'on remplit au fur et a mesure) - Les nouveaux artistes apparaissent comme des "lumieres" dans des zones encore non explorees ### Contraintes ethiques (non-negociables) - Le placement n'est JAMAIS base sur la popularite, les revenus ou les paiements - Pas de "boost" payant pour apparaitre en meilleure position - Le classement est deterministe (memes tags = meme voisinage) et transparent - La recherche textuelle classique reste toujours accessible en 1 clic - L'exploration est optionnelle, jamais forcee --- ## 3. Espaces artistes personnalisables ### Concept Chaque artiste a un espace qu'il peut personnaliser visuellement, pas juste un profil uniforme. ### Elements personnalisables | Element | Options | |---------|---------| | Couleur d'ambiance | Palette libre ou presets | | Image de fond | Upload libre | | Disposition des blocs | Drag & drop (morceaux, bio, visuels, liens, playlist) | | Typographie | Choix parmi 5-8 familles (curees, pas illimitees) | | Player | S'adapte automatiquement aux couleurs de l'espace | | CSS custom (avance) | Zone d'injection CSS limitee pour les utilisateurs techniques | ### Themes communautaires - A terme : les utilisateurs peuvent creer des themes complets et les partager - Les themes sont echangeables (troc) ou offerts - Un theme populaire beneficie a son createur (reputation, pas argent) ### Inspiration L'esprit MySpace (expression personnelle) avec l'execution de 2026 (controles elegants, preview en temps reel, pas de HTML brut). --- ## 4. Systeme de troc ### Concept Un tableau d'offres et de demandes ou les competences sont une monnaie. ### Structure d'une annonce de troc ``` Titre: "Je cherche un site web pour mon projet musical" J'offre: "3 beats instrumentaux exclusifs, mix et master inclus" Je cherche: "Un site one-page responsive avec player integre" Tags: #beatmaking #webdev #echange Disponibilite: Flexible ``` ### Mecanismes - Pas de monnaie interne, pas de points, pas de tokens - Annonce visible par toute la communaute - Les utilisateurs se contactent par le chat pour negocier - Une fois le troc realise, les deux parties le "confirment" - L'historique de trocs est visible sur le profil (reputation) - Pas de systeme d'evaluation (pas de note sur 5, pas d'etoiles — la reputation est l'historique lui-meme) ### Exemples de trocs possibles | J'offre | Je cherche | |---------|-----------| | 5 beats exclusifs | Un site web | | Mix + master d'un EP | Un shooting photo | | Design de pochette | 3 instrumentales | | Formation MAO (3 sessions) | Logo + charte graphique | | Prise de son live | Montage video | | Preset pack (Serum/Vital) | Enregistrement voix | ### Ce que ce n'est pas - Pas une marketplace avec des prix (ca c'est le module Shop) - Pas un systeme de faveurs comptabilisees - Pas un smart contract ou un engagement legal — c'est de la confiance communautaire - Le troc est informel et humain. Veza facilite la mise en relation, pas la transaction. --- ## 5. Sites artistes (a terme) ### Concept Chaque artiste peut avoir un mini-site public accessible en dehors de Veza, a une URL propre (artiste.veza.xxx ou un domaine custom). ### Contenu du site artiste - Bio, photo, liens sociaux - Lecteur audio avec ses morceaux - Galerie (pochettes, photos, visuels) - Lien vers le profil Veza - Contact - Design personnalise (theme Veza applique) ### Fonctionnement - Genere statiquement a partir du profil Veza (SSG) - Heberge sur les R720 (cout marginal : zero) - Le site se met a jour quand l'artiste modifie son profil Veza - Pas de publicite, pas de tracking - L'artiste peut brancher son propre domaine (CNAME) ### Pourquoi c'est important - Un artiste independant n'a souvent pas de site web - Les plateformes (Spotify, SoundCloud) ne permettent pas la personnalisation - Avoir son propre site = legitimite, autonomie, professionnalisme - C'est un argument puissant pour rejoindre Veza (valeur tangible gratuite) --- ## 6. UI qui ne gaspille pas ### Philosophie L'app doit etre complete et vivante MAIS econome. Chaque octet charge, chaque requete envoyee, chaque animation jouee doit servir l'experience. ### Contraintes techniques | Metrique | Objectif | |----------|---------| | Bundle JS initial | < 150 Ko gzip | | First Contentful Paint | < 1.5s | | Time to Interactive | < 2s | | Requetes au chargement | < 5 | | Animations simultanees | max 2 | | Images : format | WebP ou AVIF, lazy-loaded | | Audio : streaming | HLS adaptatif (qualite selon la connexion) | | Polices | 2 max (variable fonts de preference) | ### Strategies - **Code splitting agressif** : chaque page charge uniquement son code - **Prefetch intelligent** : precharger la page la plus probable (pas tout) - **Mode hors-ligne** : les morceaux recemment ecoutes sont caches localement - **Mode eco** : un toggle qui desactive les textures, les animations et la patine pour les machines/connexions modestes - **Pas de polyfill inutile** : cibler les navigateurs modernes uniquement - **SVG > PNG pour les icones** (poids moindre, rendu net a toute taille) --- ## Ordre d'implementation suggere | Priorite | Concept | Complexite | Impact | |----------|---------|-----------|--------| | 1 | Identite visuelle (palette, typo, textures, icones) | Moyenne | Fondamental | | 2 | Player audio repense | Moyenne | Coeur de l'experience | | 3 | Espaces artistes personnalisables | Moyenne | Differenciation forte | | 4 | Systeme de troc | Faible | Communaute | | 5 | Patine de l'interface (V1 : global, pas par zone) | Faible | Signature unique | | 6 | Recherche enrichie (V1) | Moyenne | UX amelioree | | 7 | Sites artistes statiques | Moyenne | Valeur ajoutee | | 8 | Carte des artistes 2D (V2) | Elevee | Innovation | | 9 | Patine par zone (V2) | Moyenne | Profondeur | | 10 | Monde explorable (V3-V4) | Tres elevee | Vision long terme |