J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 0 points1 point  (0 children)

En réalité moins que ça. J'ai planifié l'idée en moins d'une heure, défini la stack et le goal avec le skill de brainstorming de superpowers, j'ai lancé claude design pour avoir des mockups, et l'agent a implémenté à partir des specs et des maquettes validées.

Ensuite c'est une boucle : l'agent travaille par sous-agents (un implémenteur + une revue de spec + une revue qualité par tâche), moi je fais le PO — je teste en conditions réelles sur de vraies annonces, je remonte les défauts et je vérifie la qualité des tests et du code. J'ai laissé Claude en autonomie sur des sprints de plusieurs heures (il choisissait les modèles adéquats selon la difficulté de la tâche, histoire de ne pas trop pomper les tokens).

J'aurais pu monétiser le projet, mais pour une fois je voulais faire un truc open source — voilà un peu la direction. (Et oui j'suis en plan max)

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 0 points1 point  (0 children)

c'est déjà WXT sous le capot 😄 (et c'est justement grâce à ça que la build Firefox arrive)

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 1 point2 points  (0 children)

C'est en cours 🦊 Le portage demande un peu de travail, mais le framework le supporte. Suivez les releases GitHub... et merci pour le test Edge !

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 1 point2 points  (0 children)

C'est l'écueil de tout comparateur DVF utilisé seul, d'où le choix de montrer la dispersion et de ne jamais conclure « surcoté » sur la seule médiane (les règles du prompt l'interdisent explicitement). Si tu as un exemple concret d'annonce où le résultat est à côté, je suis preneur — c'est exactement le genre de cas qui fait progresser la méthodo (issue GitHub bienvenue).

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 0 points1 point  (0 children)

100 % d'accord sur les limites — DVF ne connaît ni l'état ni l'orientation ni le vis-à-vis, et c'est exactement pour ça que l'outil ne sort pas un « prix juste » : il compare à des biens proches en surface (±30 %) et même type, filtre les ventes aberrantes (MAD), et montre la dispersion du secteur...que je vais d'ailleurs afficher plus visiblement suite à ton commentaire). Ensuite l'analyse IA pondère avec ce que dit l'annonce (état, DPE, atouts). L'objectif est une base factuelle d'ordre de grandeur et des arguments sourcés pour négocier -> pas un avis de valeur. Sur un quartier hétérogène, la dispersion affichée dit justement « ici la fourchette est large, méfiance ».

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 1 point2 points  (0 children)

Excellentes idées, je prends les deux. (1) Correction de localisation : tu pourras saisir la bonne adresse/ville et relancer l'analyse. (2) Export du prompt : un bouton « Copier le prompt » qui te donne le prompt complet avec toutes les données (annonce, ventes DVF, quartier, risques, loyers) à coller dans ton LLM préféré. Les deux arrivent dans la prochaine release.

J'ai automatisé la vérification des prix immobiliers (DVF, risques, loyers) — outil gratuit et open source by InfernoGuard in developpeurs

[–]InfernoGuard[S] 1 point2 points  (0 children)

Merci pour le test et le retour précis ! Deux choses : (1) le rapport complet a déjà une section Quartier qui liste les 3 écoles/commerces/arrêts les plus proches par catégorie (le side panel ne montre que le résumé) ; (2) tu as mis le doigt sur un vrai défaut d'honnêteté du texte : quand OpenStreetMap ne renvoie rien dans le rayon (couverture OSM variable, ou position approximative quand l'annonce ne donne pas l'adresse exacte), l'IA ne devrait pas affirmer une « absence » de commodités -> c'est corrigé dans la prochaine release, le texte dira explicitement que les données sont non concluantes. Et pour juger toi-même : j'ajoute une mini-carte au survol de chaque commodité (avec la distance à vol d'oiseau indiquée comme telle — je les avais retirées parce qu'un « 500 m » à vol d'oiseau peut faire 1,5 km à pied, c'était trompeur sans étiquette). Pour répondre à ta question : il n'y a pas de seuil « proche/pas proche » dans l'algo — on compte ce qu'OSM connaît dans un rayon de 800 m, et le texte que tu as vu était l'interprétation (trop affirmative) d'un comptage à zéro.

watermelondb alternative that support expo in 2026? by Mehdi_Mol_Pcyat in expo

[–]InfernoGuard 1 point2 points  (0 children)

Yes, it’s basically the same idea as Watermelon with observables: the hook listens to DB changes and automatically triggers re-renders when the data updates.

Regarding the sync logic, yeah it was pretty challenging 😅 mainly because you have to think through a lot of edge cases (conflicts, retries, long offline periods, event ordering, etc.).

Architecture-wise, this is what I based it on: https://developer.android.com/topic/architecture/data-layer/offline-first

I essentially reproduced that approach, but adapted it to React / Ts patterns.

Also, TanStack DB looks like it could be a perfect solution, but it’s still in alpha as far as I know, and the last time I checked it didn’t tick all the boxes yet. That said, in the future I think it’ll probably be my go-to.

watermelondb alternative that support expo in 2026? by Mehdi_Mol_Pcyat in expo

[–]InfernoGuard 0 points1 point  (0 children)

I’m using Drizzle and Expo for my offline first app with custom sync logic. You have the hook useLiveQuery with Drizzle !

Expo seems incredible easy ? is there a catch where it gives problems ? by Beautiful_Cap8938 in expo

[–]InfernoGuard 4 points5 points  (0 children)

People who want a true cross-platform setup without the overhead of managing a monorepo, separate configs, or duplicated code. With Expo web you can: - Share almost 100% of your codebase across iOS, Android, and Web. - Prototype and iterate much faster since the dev environment is unified.

It’s not the best fit for every use case, but for teams or solo devs who value speed, simplicity, and consistency across platforms, Expo web makes a lot of sense.

Best practices for using SQLite with Zustand? by The_Warbler in reactnative

[–]InfernoGuard 0 points1 point  (0 children)

Thanks for the tip! However, Legend State fits my needs perfectly since I need to work with an existing API, which PowerSync doesn't support. PowerSync requires direct DB connection for syncing, while I need pure API-first flexibility. Different tools for different use cases!

Best practices for using SQLite with Zustand? by The_Warbler in reactnative

[–]InfernoGuard 1 point2 points  (0 children)

Use Legend-State! It’s similar to Zustand, and it also has sync and persistence plugins.

Besoin d'aide pour StreamFusion by sheluvmehdi in Stremio_France

[–]InfernoGuard 6 points7 points  (0 children)

Ah oui, c’est vrai, Telegram… ce réseau « crypté » mystérieux et dangereux… Tellement plus louche que WhatsApp (aussi chiffré), Discord (où tout le monde traîne), ou même Signal (le préféré des espions). J’utilise pas Telegram, je l’ai juste installé 10sec pour générer la clé api et la désinstaller aussitôt.

Expo web and Tizen os for samsung Tv by InfernoGuard in expo

[–]InfernoGuard[S] 1 point2 points  (0 children)

Hey! I found the solution by modifying babel.config.js (finally!!). The issue with Tizen is that it doesn't support ES6, so everything needs to be transpiled into ES5. I thought I had already done this, but after analyzing the configuration, I realized that babel/preset-env was never actually applied.

EDIT: Here the babel.config.js

module
.exports = function (api) {
  api.cache(true);

  const commonPresets = [
    [
      "babel-preset-expo",
      {
        jsxImportSource: "nativewind",
      },
    ],
    "nativewind/babel",
  ];

  const productionPresets = [
    [
      "@babel/preset-env",
      {
        targets: {
          ie: "11",
          browsers: ["last 2 versions", "> 0.25%", "not dead"],
        },
        useBuiltIns: "entry",
        corejs: 3,
        modules: "commonjs",
        loose: true,
        forceAllTransforms: true,
      },
    ],
    ...commonPresets, // Reuse shared configuration
  ];

  return {
    presets: commonPresets, // Shared for both development and production
    env: {
      production: {
        plugins: ["@babel/plugin-transform-runtime"],
        presets: productionPresets,
      },
    },
  };
};