[{"data":1,"prerenderedAt":128},["ShallowReactive",2],{"projet-en-immowise":3,"suivant-en-immowise":66},{"id":4,"title":5,"annee":6,"body":7,"brouillon":32,"demo":33,"description":27,"extension":37,"liens":38,"meta":41,"navigation":42,"ordre":43,"path":44,"ref":45,"resume":46,"roles":47,"schemas":51,"seo":52,"stack":53,"stem":62,"titre":63,"__hash__":64,"slug":65,"traduit":42},"projets_en\u002Fen\u002Fprojets\u002Fimmowise.md","Immowise",2025,{"type":8,"value":9,"toc":26},"minimark",[10,15,19,23],[11,12,14],"h2",{"id":13},"context","Context",[16,17,18],"p",{},"Investing in property means pulling together scattered sources, then comparing them\nagainst criteria that stay stable from one file to the next. Done by hand, the work is\nredone in full for every property, and no two analyses are ever comparable.",[11,20,22],{"id":21},"what-we-did","What we did",[16,24,25],{},"A platform covering the whole lifecycle of a property: prospecting, financial analysis,\npurchase, renovation works, rental management, resale. A monorepo with a Vue 3 application\nand a NestJS API on PostgreSQL, a financial model covered by characterisation tests, user\njourneys verified with Playwright, and documents and email served by S3 and SES.",{"title":27,"searchDepth":28,"depth":28,"links":29},"",2,[30,31],{"id":13,"depth":28,"text":14},{"id":21,"depth":28,"text":22},false,{"type":34,"url":35,"repli":36},"desktop","https:\u002F\u002Fimmo.bbob.be\u002F","\u002Fimages\u002Fimmowise-repli.png","md",[39],{"label":40,"url":35},"immo.bbob.be",{},true,20,"\u002Fen\u002Fprojets\u002Fimmowise","002","Platform for analysing and managing real-estate investments.",[48,49,50],"Solution architect","Team lead","Developer",[],{"description":27},[54,55,56,57,58,59,60,61],"Vue","Vite","Pinia","NestJS","TypeScript","PostgreSQL","Docker","AWS","en\u002Fprojets\u002Fimmowise","ImmoWise","0lgaW10BmsYa_os6Kv8jpk6zRxTchpovyLt8fgc6eGg","immowise",{"id":67,"title":68,"annee":69,"body":70,"brouillon":32,"demo":93,"description":27,"extension":37,"liens":108,"meta":109,"navigation":42,"ordre":110,"path":111,"ref":112,"resume":113,"roles":114,"schemas":118,"seo":119,"stack":120,"stem":124,"titre":125,"__hash__":126,"slug":127,"traduit":42},"projets_fr\u002Ffr\u002Fprojets\u002Fcojam.md","Cojam",2026,{"type":8,"value":71,"toc":89},[72,76,79,83,86],[11,73,75],{"id":74},"contexte","Contexte",[16,77,78],{},"Un automobiliste coincé dans un bouchon perd du temps, seul, à quelques mètres d'autres\npersonnes qui perdent le même temps. CoJam met ces conducteurs en relation : chat texte\net messages audio, salon vocal mains libres, carte de proximité, et mise en relation par\ndestination ou centre d'intérêt.",[11,80,82],{"id":81},"intervention","Intervention",[16,84,85],{},"Discovery et analyse business, analyse fonctionnelle, architecture technique et planning\nfinancier, puis développement. Application Flutter, temps réel en NestJS et Socket.IO sur\nFargate, géolocalisation de proximité en PostGIS plutôt qu'en cache dédié, voix en WebRTC\nmanagé, et infrastructure entièrement AWS pour tenir la charge opérationnelle à zéro.",[16,87,88],{},"L'interface se verrouille au-delà de 20 km\u002Fh : c'est la contrainte qui a dicté toute\nl'ergonomie, le mode vocal étant le mode par défaut et non une option.",{"title":27,"searchDepth":28,"depth":28,"links":90},[91,92],{"id":74,"depth":28,"text":75},{"id":81,"depth":28,"text":82},{"type":94,"captures":95},"galerie",[96,99,102,105],{"src":97,"label":98},"\u002Fimages\u002Fcojam\u002F01_onboarding.jpg","Onboarding",{"src":100,"label":101},"\u002Fimages\u002Fcojam\u002F02_map.jpg","Carte de proximité",{"src":103,"label":104},"\u002Fimages\u002Fcojam\u002F03_chat.jpg","Chat et messages audio",{"src":106,"label":107},"\u002Fimages\u002Fcojam\u002F05_jeux.jpg","Jeux pendant l'attente",[],{},30,"\u002Ffr\u002Fprojets\u002Fcojam","003","Application mobile qui transforme les bouchons en rencontres.",[115,116,117],"Architecte solution","Business Analyst","Développeur",[],{"description":27},[121,57,122,59,123,61],"Flutter","Socket.IO","LiveKit","fr\u002Fprojets\u002Fcojam","CoJam","lA1vjHR1GZ_zARioPG4Ny4tw-g2LaEO2i2vq-mfSSPs","cojam",1785094381246]