Take Me Pic

Trouver, en trente secondes, quelqu’un pour te prendre en photo.

Quand un groupe veut une photo de tout le monde, quelqu’un reste toujours derrière l’appareil — et demander à un passant est lent, gênant, un peu incertain. Take Me Pic est un réseau d’entraide ancré dans un lieu et un moment : une demande diffusée aux personnes disponibles autour de soi, le premier qui accepte gagne, une conversation pour se retrouver, la photo, puis une note. Autour, un carnet de voyage communautaire et une réputation qui se gagne en aidant.

  • IOS · EXPO
  • SITE ET CONSOLE NEXT.JS
  • SUPABASE · POSTGIS
  • QUATRE LANGUES
  • REVENUECAT · STRIPE
  • TEMPS RÉEL

01 — Le problème

Quelqu’un reste toujours derrière l’appareil.

Un groupe veut une photo de tout le monde. Il faut soit sacrifier une personne, soit demander à un inconnu qui passe — ce qui est lent, gênant, et jamais tout à fait rassurant. Le produit part de cette scène précise plutôt que d’une catégorie d’application.

  • Un réseau d’entraide, pas un réseau social de plus

    La formule est du client : « on y entre pour une photo, on y reste pour la communauté ». Ce qui est ancré, c’est un lieu et un moment — pas un profil qu’on entretient.

  • La portée a été volontairement réduite

    La première phase ne traite que le cœur de l’entraide photo. Les réservations et les partenariats commerçants sont écrits, chiffrés, et repoussés jusqu’à ce que l’usage existe.

  • Et la pile a été choisie par ce qui existait déjà

    Une réécriture en Flutter a été explicitement écartée : une maquette de vingt-sept écrans validée existait, et repartir de zéro aurait remis la vélocité réelle à zéro pour un gain de rendu marginal.

L’écran de connexion : « hello again — sign in to your journal », avec Apple et Google

02 — La requête

Une seule requête décide si le produit fonctionne.

Tout le reste — le fil, la réputation, les conversations — dépend d’une question posée des milliers de fois : qui est disponible, tout de suite, autour de moi ? Elle est traitée comme la pièce centrale et non comme un détail d’implémentation.

  • PostGIS, pas une API payante

    Le filtre de rayon et le tri par distance réelle passent par une extension libre de PostgreSQL, avec un index géographique dédié. Le GPS de l’appareil fournit la position ; aucun service tiers facturé n’intervient dans l’appariement.

  • Le premier qui accepte gagne

    La demande est diffusée à toutes les personnes éligibles autour, pas adressée à une seule. L’acceptation est atomique : elle attribue l’aidant, change le statut, crée la conversation et la notification dans une seule transaction.

  • Une disponibilité périme

    Il n’y a pas de battement de cœur, et quelqu’un qui fermait l’application restait « disponible » indéfiniment. Une fraîcheur de trente minutes a été ajoutée après le constat, et l’application relit son propre état au démarrage plutôt que de faire confiance à ce qu’elle affiche.

  • La confidentialité est dans la requête

    La fonction d’appariement s’exécute avec des droits élevés précisément pour pouvoir lire les tables de blocage et d’exclusion, et la console d’administration ne peut jamais lire les coordonnées brutes — seule la requête d’appariement les voit.

La carte : « j’aide » ou « je cherche » en bascule, les lieux autour, et « Find your photographer » en bas

03 — La boucle

Demander, accepter, se retrouver, noter.

C’est la promesse des trente secondes, et la seule chose qui doit être irréprochable. Chaque étape produit l’étape suivante sans que personne ait à revenir en arrière.

  • La position n’est partagée que pendant la séance

    Hors séance active, elle ne l’est pas. C’est écrit dans la justification de permission que l’utilisateur lit avant d’accepter.

  • Les mesures ne portent aucune donnée

    Les événements passent par un assainisseur central qui retire coordonnées, texte des messages, adresses de photos et contenu des commentaires avant l’envoi. La liste de vérification l’assert événement par événement.

  • Le karma récompense celui qui est noté

    Et une seule des treize règles de karma prévues est réellement branchée aujourd’hui — celle des étoiles. Les douze autres sont préparées et dormantes, ce qui est écrit noir sur blanc dans l’audit plutôt que présenté comme livré.

Le carnet : un fil communautaire en trois onglets — pour toi, suivis, près d’ici — avec les photos publiées et leurs lieux

04 — Les boutiques

Deux règles de magasin ont réécrit le produit.

Aucune des deux n’était un choix. Ce sont des contraintes externes arrivées après la conception, et la façon dont elles ont été absorbées en dit plus sur le projet que la liste des fonctionnalités.

  • Le rail de paiement a été coupé en deux

    Le plan d’origine facturait l’abonnement par Stripe. La règle 3.1.1 d’Apple impose l’achat intégré pour tout bien numérique : l’abonnement est passé par RevenueCat et Apple, et Stripe est resté pour ce qui se passe dans le monde réel. Le modèle économique du dossier client avait été chiffré sur l’ancien rail.

  • Une permission a été retirée à la compilation

    Les bibliothèques de choix d’image ajoutent d’office un accès large aux médias, que Google Play signale. Une extension de configuration a été écrite pour retirer ces permissions au moment de la construction — de sorte qu’aucune dépendance ne puisse les réintroduire par la porte de derrière.

  • Et une fonctionnalité a été retirée puis remise le même jour

    Les messages vocaux exigeaient une permission de service en arrière-plan. Ils ont été supprimés le matin et rétablis dans la journée : l’arbitrage lui-même a été renversé en quelques heures. C’est ce que coûte une règle de magasin qu’on découvre après avoir livré.

L’écran de connexion : « hello again — sign in to your journal », avec Apple et Google
55
migrations de base, du premier écran au produit branché
43
écrans mobiles, plus quarante-deux pages de site et soixante-cinq d’administration
26
parcours de test rejoués sur l’appareil, un par tâche livrée
4
langues, dont l’arabe et l’espagnol

Comptage direct des fichiers sources, dépôt DigitariaWebs/take-me-pic au commit 4ddf677 (18 août 2026) et DigitariaWebs/take-me-pic-web au commit ecff2ce. Aucune donnée d’usage n’est publiée : elle appartient au client.

AGS Globalfarm

Le conseil agronomique calculé à la surface exacte de la parcelle.

All projects

Can we help?

Let’s talk about your project