La situation de départ
Acheter et vendre d'occasion entre expatriés se fait dans des groupes de messagerie, où l'annonce disparaît sous les messages en une heure et où l'on ne sait jamais à qui l'on parle.
Ce qui a été livré
Une place de marché mobile où l'annonce reste consultable, se retrouve par catégorie et par ville, et où l'on contacte le vendeur directement, par message ou par téléphone, sans intermédiaire qui prélève au passage.
Ce que ça change
Le projet vu par ceux qui s'en servent tous les jours.
01
On cherche là où on vit
Les annonces se filtrent par catégorie, sous-catégorie et ville. Un canapé à trois quartiers de chez soi n'a rien à voir avec le même canapé à l'autre bout du pays.
02
Le contact est direct
Message ou appel, du candidat au vendeur, sans commission ni intermédiaire. Le prix affiché est celui qu'on paie.
03
On sait à qui on parle
Chaque vendeur a sa fiche : ses annonces en cours et depuis quand il est inscrit. Ce n'est pas une réputation notée, mais c'est vérifiable.
Les écrans, un par un
Chaque écran reste en place le temps qu'on lise ce qu'il démontre. Sur une application, l'écran est le produit : il occupe donc toute la place.

01 / 03
L'annonce, en entier
Photos, prix, ville, date, état et description. Tout ce qu'on demande dans un groupe de messagerie en quatre allers-retours tient ici sur un écran.
Côté technique
Les images sont servies au format adapté à l'écran par le service qui les héberge, pas redimensionnées après coup dans l'application.

02 / 03
Le vendeur, et comment le joindre
Message ou appel, au choix, et la fiche du vendeur juste à côté : ses annonces en cours, son ancienneté. On décide en connaissance de cause.
Côté technique
Aucune messagerie interne à maintenir : le contact passe par les applications que les gens utilisent déjà.

03 / 03
Retrouver, pas seulement parcourir
Catégorie, sous-catégorie, filtres actifs affichés et retirables un par un. On affine sans jamais perdre où l'on en est.
Côté technique
Les listes de catégories viennent toutes de la même déclaration : le filtre et le formulaire de dépôt ne peuvent pas diverger.
Sur un téléphone
Les écrans tels qu'ils se présentent sur un téléphone.
Les choix, et pourquoi
Chaque décision porte sa raison, puis ce qui casserait sans elle.
01
Le domaine séparé du transport
Côté serveur comme côté application, les règles métier vivent dans leur propre couche, indépendante d'Express et de la base. Les entités et objets valeur sont définis une fois et partagés.
Sans ça : Une place de marché change de règles souvent : catégories, champs obligatoires, conditions de publication. Mêlées au code de transport, chaque changement devient une opération à risque.
02
Les photos ne transitent pas par nos serveurs
Les images d'annonces sont confiées à un service spécialisé qui les redimensionne et les sert au format adapté à l'écran.
Sans ça : Une annonce, c'est cinq photos prises au téléphone, soit une quinzaine de mégaoctets. Les stocker et les servir soi-même, c'est payer de la bande passante pour faire moins bien.
03
L'authentification par jetons signés
Jetons signés côté serveur et mots de passe hachés avec un algorithme lent conçu pour ça. Aucune session en mémoire, donc rien à répliquer si le service redémarre.
Sans ça : Un mot de passe stocké autrement qu'avec un algorithme lent est déchiffrable en masse le jour d'une fuite.
04
Les abus sont freinés avant d'arriver
Limitation du nombre d'appels par adresse et en-têtes de sécurité HTTP posés au niveau de l'application.
Sans ça : Sans limite, une place de marché ouverte se fait moissonner ses annonces et bombarder son formulaire d'inscription dès qu'elle devient visible.
05
Une seule source pour les catégories
Catégories et sous-catégories sont déclarées à un seul endroit et dérivées partout ailleurs : filtres, formulaire de dépôt, écrans de recherche.
Sans ça : Des listes recopiées d'un écran à l'autre finissent par diverger, et une annonce devient introuvable dans le filtre censé la trouver.
- Notre rôle
- Produit, architecture, développement, publication
- Nature
- Application mobile
- Technologies
- React Native
- Expo SDK 57
- GluestackUI + NativeWind
- TanStack Query
- Node.js / Express
- PostgreSQL
- Cloudinary
- Clean Architecture / DDD
Dites-nous ce que vous cherchez à construire.
Nous écrire sur WhatsAppLes autres réalisations

Bahia Renov Pro
Logiciel métier · Espagne
Les chantiers se pilotaient au tableur partagé et au téléphone. Trois personnes saisissaient les mêmes informations, et chaque dossier d'aide devait repartir chez le délégataire avec les bons papiers, dans le bon ordre, sous peine d'être rejeté.
Voir l'étude de cas

Terres de Villas
Immobilier de prestige · France
Une agence naissante sur un marché où la crédibilité se joue avant le premier rendez-vous. Face à des enseignes installées depuis vingt ans, il fallait paraître établie dès le premier jour, et exister en anglais sans doubler le travail de saisie.
Voir l'étude de cas

SAVY
Finances personnelles · Produit du studio
Tenir un budget à plusieurs se fait au tableur partagé, ou pas du tout. Chacun avance une dépense, personne ne sait où en est le mois, et la conversation revient toujours au même endroit : qui a payé quoi.
Voir l'étude de cas

