Document de reference : diagnostic complet du projet, raisonnements strategiques, decisions prises et leur justification. A relire avant chaque decision majeure.
Le dossier TG__Talas_Group contenait 53 927 fichiers pour un total de ~11 Go. L'etat etait desorganise avec de multiples problemes structurels.
| Repertoire | Taille | Contenu | Statut |
|---|---|---|---|
veza-application/ |
2.0 Go | App complete avec prompts GPT et archives | Obsolete |
archives/veza-web-app_10_06_2025/ |
1.7 Go | Snapshot complet date | Obsolete |
veza-web-app/ |
1.0 Go | Go backend + React frontend, repo git | Remplace par veza-full-stack |
Bordel/ |
798 Mo | Staging temporaire, variantes Java/Rust abandonnees | Desordonne |
application/ |
765 Mo | Code consolide + archives | Obsolete |
veza-full-stack/ |
464 Mo | Monorepo Go+Rust+React, version la plus avancee | Remplace par /home/senke/git/talas/veza |
pre_refactor/ |
53 Mo | Version pre-refactoring | Obsolete |
Probleme : 6 versions differentes de la meme application coexistaient dans le dossier alors qu'un depot separe (/home/senke/git/talas/veza) contenait la version de reference.
| Fichier | Taille | Contenu probable |
|---|---|---|
TG__Talas_Group.zip |
708 Mo | Sauvegarde complete du dossier |
TG__Talas_Group_deepseek.zip |
708 Mo | Sauvegarde apres session DeepSeek |
TG__Talas_Group_ds.zip |
708 Mo | Doublon de la precedente |
veza-web-app.zip |
658 Mo | Archive de l'app web |
TG__Talas_Group_old1_21_02_2025.zip |
118 Mo | Sauvegarde de fevrier 2025 |
TG__Talas_Group_alleged.zip |
87 Mo | Documentation officielle compactee |
Probleme : Les ZIP servaient de "controle de version" informel, signe qu'il manquait un vrai systeme de versioning (git) pour le dossier projet.
| Fichier | Contenu | Ou il aurait du etre |
|---|---|---|
gpt_whole_description.md |
Description complete du projet generee par GPT | 00_META/Vision_Projet/ |
fichier_propre.txt |
Rapport d'incident cybersecurite (exercice EPITA) | 04_INFRA/Securite/ |
mail_thomann.txt |
Email au fournisseur de capsules | 02_PRODUITS_PHYSIQUES/Fournisseurs/ |
inventaires_composants_bom_origin_project.ods |
Bill of Materials | 02_PRODUITS_PHYSIQUES/Microphone/BOM/ |
routes_api_pre_refactor.txt |
Routes API documentees | 03_APPS_&_SERVICES/Architecture/ |
DB_history_creation_user_bdd.png |
Schema de BDD | 03_APPS_&_SERVICES/Architecture/ |
from_epita_usefull_for_talas.md |
Notes de cours EPITA utiles | 12_DOCUMENTATION/References/ |
jumpserver_conv_1/2/3.txt |
Conversations debug JumpServer (chinois) | 04_INFRA/Notes_Operations/ |
search.txt, grep_result.txt |
Resultats de recherche temporaires | Poubelle |
tree_l3.txt, tree_l4.txt |
Arbres de fichiers sauvegardes | Poubelle |
fichier.txt |
Contenu non identifie | Poubelle |
La documentation existait dans 4 endroits differents, avec des doublons :
Documentation/ — 18 fichiers (business plan, roadmaps, arbres v1-v4, taches)TG__Talas_Group_alleged/Documentation/ — copie partielle de Documentation/TALAS/12_DOCUMENTATION/ — structure vide avec README uniquementgpt_whole_description.md)Resultat : impossible de savoir quel document etait la reference.
Le dossier TALAS/ contenait 14 sous-dossiers numerotes avec une taxonomie bien pensee
(calquee sur talas_master_tree_v4.md). Mais a part des README decrivant le contenu
attendu, les dossiers etaient vides. Le squelette existait sans le corps.
Alerte 1 : Mots de passe en clair dans mail_thomann.txt Le fichier contenant l'email au fournisseur Thomann se termine par ce qui ressemble a deux mots de passe en clair :
root
[V3LPM!x|{}$_89EHDgcn5u<
zi1;4kXC06M#FiqgNQyTahxS
→ Recommandation : supprimer immediatement ces lignes du fichier. → Si ces mots de passe sont utilises quelque part, les changer.
Alerte 2 : Cles SSH dans le depot applicatif
Le repertoire veza-full-stack/ssh-keys/ et ssh-keys-backup-20250915-234918/
contenaient des cles SSH dans un dossier projet.
→ Les cles privees ne doivent JAMAIS etre dans un dossier projet.
→ Maintenant archivees dans 13_ARCHIVES/ mais a verifier et supprimer.
Alerte 3 : Rapport d'incident de securite (fichier_propre.txt) Ce fichier est un rapport d'incident cybersecurite detaille (phishing, compromission de compte admin, exfiltration de donnees). Il semble s'agir d'un exercice realise dans le cadre des etudes a EPITA (les noms et emails sont fictifs : "g.morel@entreprise.fr", "antoine.dupont@entreprise.fr"). Neanmoins, il est marque "Confidentiel" et ne devrait pas trainer dans un dossier projet ouvert.
Principe : utiliser la structure TALAS/ comme nouvelle racine, la peupler avec le contenu reel, et tout archiver le reste.
Operations realisees (dans l'ordre) :
Aucune donnee n'a ete supprimee. Tout est dans 13_ARCHIVES/.
Force 1 : Vision solide et differenciante Le positionnement "audio ethique, reparable, accessible" est credible parce qu'il repose sur des actions concretes (schemas publics, composants standards, documentation de reparation) et pas seulement sur du marketing. La tendance de fond est favorable : le droit a la reparation gagne du terrain en Europe (directive UE 2024), les consommateurs jeunes sont plus sensibles a la durabilite, et le marche du podcasting/ home-studio est en croissance.
Ce qui differencie Talas de tentatives similaires : l'ecosysteme complet. Beaucoup de projets open-hardware existent mais se limitent au materiel. Ajouter une plateforme communautaire + boutique ethique + transparence sur les couts cree un positionnement unique.
Force 2 : Hardware concret (pas vaporware) Le projet n'est pas a l'etat d'idee. Il y a :
Force 3 : Competences techniques exceptionnellement larges Pour un fondateur solo, maitriser simultanement :
Force 4 : Application Veza quasi-production Decouvert en cours de session : l'application n'est pas un prototype mais un logiciel production-ready. Details critiques :
Force 5 : Infrastructure self-hosted puissante 2x Dell PowerEdge R720 = 768 Go RAM, 64 coeurs, 10 GbE, ~100 HDD + SSD. Avantages :
Force 6 : Ecosysteme complet pense de bout en bout Aucun fabricant de microphone ne propose simultanément :
Faiblesse 1 : Pas de business plan operationnel
Ce qui existe dans talas.md est un bon brouillon mais pas un BP viable :
Faiblesse 2 : Couts de fabrication sous-estimes Le chiffre annonce de 76 EUR/unite (61 EUR materiaux + 5 EUR garantie + 10 EUR expedition) ne reflete pas le cout reel. Elements manquants :
| Poste oublie | Estimation |
|---|---|
| Temps d'assemblage (estimation 2-3h x SMIC horaire ~11.65 EUR) | 23-35 EUR |
| Amortissement equipement (fer a souder, multimetre, etc.) | 2-5 EUR |
| Emballage reel (boite, livret, stickers, blister) | 5-10 EUR |
| Commission Stripe (2.9% + 0.25 EUR sur 150 EUR) | ~4.60 EUR |
| Cotisations sociales (12.3% de 150 EUR en micro-entreprise) | ~18.45 EUR |
| Provision retours/SAV (5% du prix) | ~7.50 EUR |
Le cout reel tout compris serait plutot 120-140 EUR par unite a 150 EUR de prix de vente, laissant une marge nette de 10-30 EUR en micro-entreprise — pas les 74 EUR annonces.
Cependant : en micro-entreprise, les cotisations sociales sont un pourcentage du CA, pas du cout. Le calcul de marge doit etre fait sur le CA apres cotisations :
Faiblesse 3 : Documentation existante repetitive et generee par IA Plusieurs documents du projet sont des outputs bruts de GPT/DeepSeek non edites :
gpt_whole_description.md (le titre l'admet)important_aspects.md, aspects_to_consider.md et Liste Complete des Aspects.md
sont trois versions du meme contenutalas_master_tree_v1/v2/v3/v4.md sont 4 iterations du meme arbre
Ces documents representent du brainstorming, pas de la documentation. Ils ne refletent
pas des decisions reelles prises.
→ Le document d'identite TALAS_IDENTITE_PROJET.md a ete cree pour servir de reference
unique et consolider toutes ces sources.Faiblesse 4 : Aucune validation marche Au 21 mars 2026, il n'y a eu :
Faiblesse 5 : Pas de forme juridique Impossible de :
Faiblesse 6 : Composants manquants pour le prototype Il manque les capsules et les connecteurs XLR 5 pins pour assembler le premier prototype complet. Tant que ces composants ne sont pas commandes et recus, le micro n'existe pas en tant que produit fini.
Argument : la methodologie lean startup classique dit de commencer par le produit minimum viable (MVP), valider qu'il y a une demande, puis etendre. Lancer une app communautaire avant d'avoir un seul client est premature.
Pourquoi cette recommandation a ete revisee : Elle etait basee sur l'hypothese que l'app etait un prototype inacheve. La decouverte que Veza est un logiciel production-ready (88/89 features, pentest valide, 920+ tests) invalide cette hypothese. Le cout marginal de lancer l'app en meme temps que le micro est faible puisque le travail est deja fait.
Arguments en faveur :
Risques identifies :
L'ecosysteme complet sera lance, mais en phases progressives :
Phase 1 : Le micro est la porte d'entree
Phase 2 : La communaute s'ouvre a tous
Phase 3 : Le crowdfunding capitalise sur la communaute
Pourquoi pas tout en meme temps ? Ouvrir la communaute sans utilisateurs est contre-productif. Les premiers acheteurs du micro forment le noyau de la communaute. Ils ont une raison d'etre la (leur produit Talas). Ensuite, leur activite attire d'autres utilisateurs.
Le code de reference se trouve dans /home/senke/git/talas/veza (depot git separe).
Les versions archivees dans 13_ARCHIVES/Applications/ sont obsoletes.
veza/
├── veza-backend-api/ Go 1.24 (Gin, GORM) — API REST, auth JWT RS256
├── veza-stream-server/ Rust (Tokio, Axum) — streaming audio WebSocket + HLS
├── veza-chat-server/ Rust — messagerie temps reel
├── apps/web/ React 18 + TypeScript + Vite + Tailwind — frontend
├── docker/ Configurations Docker (HAProxy, etc.)
├── k8s/ Manifestes Kubernetes
├── tests/ 17 suites E2E Playwright
├── proto/ Protocol Buffers (gRPC)
└── config/ Grafana, Prometheus, alerting
| Service | Technologie | Role |
|---|---|---|
| Backend API (x2) | Go | API REST, blue-green |
| Stream Server (x2) | Rust | Streaming audio, blue-green |
| Frontend (x2) | React | SPA, blue-green |
| HAProxy | 2.8-alpine | Reverse proxy, HTTPS, health checks |
| PostgreSQL | 16 | Base de donnees principale |
| Redis | 7-alpine | Cache, sessions, rate limiting |
| RabbitMQ | 3-alpine | File d'attente pour jobs asynchrones |
| Elasticsearch | 8.11+ | Recherche full-text |
| MinIO | Latest | Stockage objet S3-compatible (audio, fichiers) |
| ClamAV | 1.4 | Antivirus pour les uploads |
| Hyperswitch | 2026.03.11 | Routeur de paiement (Stripe + PayPal) |
| Alertmanager | Latest | Alertes incidents |
Authentification : JWT RS256, OAuth (Google/GitHub/Apple), 2FA, reset password Utilisateurs : profils, avatars, followers/following, parametres Audio : upload, metadata, HLS streaming, adaptation bitrate, lecteur Social : feed chronologique + decouverte, likes, commentaires, partage Chat : messages, reactions, threads, attachments, recherche Marketplace : produits, commandes, paiements, payouts createurs Abonnements : plans premium, gestion abonnement Moderation : reports, review contenu, bans Analytics : stats createur (plays, revenus) Admin : transferts, annonces, gestion utilisateurs RGPD : export donnees, suppression compte, anonymisation Co-ecoute : sessions d'ecoute collaborative Playlists : collaboratives
| Engagement | Implementation |
|---|---|
| Zero dark pattern | Audite, pas de FOMO, pas de notifications manipulatrices |
| Zero tracking ML | Pas de tensorflow/pytorch/sklearn dans aucun composant |
| Zero gamification | Pas de XP, streaks, leaderboards |
| Decouverte ethique | Par tags/genres uniquement, pas d'algorithme comportemental |
| Metriques privees | Likes/plays visibles uniquement par le createur |
| Pas de blockchain | Explicitement desactive |
| Accessibilite | WCAG AA, navigation clavier, labels ARIA |
| RGPD complet | Export, suppression, portabilite |
Serveur 1 et 2 : Dell PowerEdge R720
Stockage
smartctl -a /dev/sdX → Wear_Leveling_CountReseau
Internet (fibre Orange 1 Gbps + 5G backup)
|
[Cloudflare Tunnel]
|
┌───────────────┴───────────────┐
| |
R720 #1 (PRODUCTION) R720 #2 (DATA + BACKUP)
──────────────────── ─────────────────────────
HAProxy (reverse proxy) MinIO (stockage audio/fichiers)
Veza Backend (Go) x2 PostgreSQL replica
Veza Stream Server (Rust) x2 Elasticsearch
Veza Frontend (React) x2 ClamAV
PostgreSQL primary (SSD) Prometheus + Grafana
Redis (SSD) Alertmanager
RabbitMQ Backups PITR
Hyperswitch Sentry (optionnel)
| |
└──────── 10 GbE ───────────────┘
(replication PG, acces MinIO,
transferts de backup)
| Type de disque | Serveur | Usage | Justification |
|---|---|---|---|
| SSD (priorite) | R720 #1 | PostgreSQL primary + WAL | IOPS aleatoires critiques pour les requetes |
| SSD | R720 #1 | Redis (RDB + AOF) | Persistance rapide, acces aleatoire |
| HDD 15K (petits, 146-300 Go) | R720 #1 | Systeme, logs, swap | I/O sequentielles, pas critique |
| HDD 15K (moyens, 600-900 Go) | R720 #2 | PostgreSQL replica, Elasticsearch | Bonnes IOPS pour du HDD, lectures sequentielles |
| HDD (grands, 1.8 To) | R720 #2 | MinIO (pool ZFS mirror) | Volume > performance, stockage audio |
| HDD (grands) | R720 #2 | Backups PITR, snapshots ZFS | Volume, ecritures sequentielles |
Choix retenu : pools en mirror (paires de 2 disques), pas RAIDZ2.
| Critere | Mirror (retenu) | RAIDZ2 (alternative) |
|---|---|---|
| Tolerance panne | 1 disque par paire | 2 disques par vdev |
| Performance lecture | Excellente (striped mirrors) | Bonne |
| Performance ecriture | Bonne | Moyenne (parity calculation) |
| Perte capacite | 50% | ~33% |
| Resilver (reconstruction) | Rapide (1 disque a copier) | Lent (tout le vdev) |
| Adapte aux HDD d'occasion | Oui (resilver rapide = moins de stress) | Risque (resilver long = risque de 2e panne) |
Pour des disques d'occasion avec un taux de panne estime a 10-15%/an, le mirror est clairement superieur : le resilver rapide limite la fenetre de vulnerabilite. Et avec ~100 disques disponibles, la perte de 50% de capacite est acceptable.
| Poste | Calcul | Cout mensuel |
|---|---|---|
| Electricite serveurs | 2x R720 ~400W chacun = 800W | |
| Equipement reseau | Switch, routeur ~50W | |
| Total puissance | ~850W en continu | |
| Consommation mensuelle | 850W x 24h x 30j = 612 kWh | |
| Electricite France | 612 kWh x 0.22 EUR/kWh | ~135 EUR |
| Internet fibre Orange | Offre fibre + 5G | ~40-50 EUR |
| Nom de domaine | ~12 EUR/an | ~1 EUR |
| TOTAL | ~180 EUR/mois |
Comparaison cloud equivalent :
Economie self-hosted : 620-1320 EUR/mois, soit 7 500-15 800 EUR/an.
Approche retenue : full self-hosted, zero dependance cloud.
L'infrastructure reseau repose sur :
Pas de Cloudflare, pas de Tailscale, pas de tiers. Coherent avec les valeurs Talas (independance, transparence, controle total).
Configuration :
Internet → Fibre Orange → WireGuard/port forward → HAProxy (TLS + WAF) → services
Le format "createur anonyme qui montre ses mains/son atelier" est optimal pour TikTok/Instagram Reels pour plusieurs raisons :
Algorithmique : TikTok favorise le contenu, pas le createur. Un compte sans visage peut performer aussi bien qu'un influenceur etabli si le contenu est bon. Les videos de craftsmanship (soudure, usinage, assemblage) performent bien dans la categorie "satisfying" et "DIY".
Narratif : L'anonymat cree du mystere et de l'engagement. "Qui est derriere Talas ?" est une question qui fait revenir les gens. C'est aussi coherent avec la philosophie du projet : c'est le produit qui compte, pas la personne.
Pratique : Protege la vie privee du fondateur. Pas de pression de performance personnelle. Possibilite de pivoter ou d'arreter sans consequences personnelles.
Exemples de comptes anonymes qui fonctionnent :
Defini dans 07_CONTENUS_MARKETING/STRATEGIE_CONTENU.md.
4 types de contenu en rotation :
| Plateforme | Communaute | Approche |
|---|---|---|
| r/audioengineering (1.4M) | Post technique, comparaison A/B, AMA | |
| r/WeAreTheMusicMakers (2.2M) | Annonce produit, demo | |
| r/homerecording (130K) | Guide + produit | |
| r/beatmaking, r/makinghiphop | Ciblage beatmakers | |
| r/OpenHardware | Aspect open-source, schemas publics | |
| Groupes "Home Studio France" | Annonce francophone | |
| Groupes beatmakers francophones | Ciblage direct | |
| Discord | Serveurs production musicale | Presence communautaire |
| Gearspace | (ex-Gearslutz) forum audio pro | Credibilite technique |
| KVR Audio | Forum plugins/materiel | Public technique |
| SoundCloud | Communaute artistes independants | Cible directe |
| Usage | Outil | Cout |
|---|---|---|
| Montage video court | CapCut | Gratuit |
| Montage video long | DaVinci Resolve | Gratuit |
| Sous-titres | Auto-generes TikTok/CapCut | Gratuit |
| Planification posts | Later.com | Gratuit (< 30 posts/mois) |
| Collecte emails | Listmonk (self-hosted sur R720) | Gratuit |
| Design logo | Inkscape (vectoriel) | Gratuit |
| Maquettes UI | Figma ou Penpot | Gratuit |
| Photos produit | Smartphone + lumiere naturelle | Gratuit |
Listmonk est particulierement recommande : c'est un outil de newsletter self-hosted open-source qui peut tourner sur les R720. Zero cout, zero dependance a Mailchimp, coherent avec les valeurs Talas.
| Decision | Justification |
|---|---|
| Structure en 14 dossiers thematiques | Taxonomie existante TALAS/ validee et peuplee |
| Archivage des app dans 13_ARCHIVES/ | Code vit dans un depot separe |
| Lancement ecosysteme en sequence | App prete, micro bientot, les deux ensemble sont la differenciation |
| Marketing anonyme TikTok/Insta | Coherent avec les valeurs, bon pour l'algorithme, protege la vie privee |
| Self-hosting sur R720 | Economie de 600+ EUR/mois, coherent avec les valeurs |
| ZFS mirror (pas RAIDZ2) | HDD d'occasion = resilver rapide critique |
| SSD pour PostgreSQL/Redis | I/O aleatoires requises |
| Micro-entreprise au demarrage | Zero cout, zero complexite, plafond CA suffisant |
| Full self-hosted (WireGuard + HAProxy + WAF) | Zero dependance cloud, coherent avec les valeurs |
| Decision | Options | Elements de reflexion |
|---|---|---|
| Nom du micro | "Talas One" ? Autre ? | Simple, reconnaissable, evoque le premier produit |
| Prix de vente | 120 / 150 / 180 EUR | Depend du cout reel mesure et de la validation marche |
| Nom de domaine | talas.audio / talas.fr / autre | Disponibilite a verifier |
| Source des capsules | Thomann t.bone / AliExpress / Transound | Qualite vs prix vs disponibilite |
| Duree de garantie commerciale | 5 / 10 / 15 ans | Differenciation vs risque financier |
| Couleur d'accent de la marque | Cuivre / orange / vert circuit / bleu | Doit evoquer l'atelier/le materiel |
| Depot de marque INPI | Maintenant / apres premieres ventes | 190 EUR, protege mais pas urgent |