← Papiers
Lexique AGPL-3.0

Plan : rendre les ploxions accessibles sur mobile

Étude + plan, pas encore implémenté

Résumé

Étude du pourquoi les ploxions sont cassés sur mobile : deux types (à URL vs écran client-side), deux registres de nav (apps.php vs ploxions.php), et trois causes (Calendrier absent d'apps.php, ploxions écran bloqués par isDesktop() et masqués en CSS). Plan en phases shippables : Phase 1 surfacer les ploxions à URL dans le menu mobile en respectant le gating (priorité Calendrier), Phase 2 monter les ploxions écran en plein écran mobile, Phase 3 un launchpad mobile. Décisions en attente de José.

§1Plan — rendre les ploxions accessibles sur MOBILE

Bion posé le 2026-06-17 (lane seo). Étude + plan, PAS encore implémenté. Besoin déclencheur (José) : « je peux pas voir Calendar etc. sur mobile ».


§2👉 Décisions qui t'attendent (José)

  1. Phase 1 — source des liens ploxions dans le menu :
    • (A) Reco — faire lire au menu une passe sur config/ploxions.php (les ploxions qui ont une config['url']), source unique, auto-surface les futurs ploxions URL.
    • (B) Plus simple — juste ajouter Calendrier (et vérifier Finance) comme items dans config/apps.php. Mais apps.php ne connaît que public vs admin : il faudrait y ajouter la notion auth-only (Calendrier = connectés, pas admin).
  2. Phase 2 — quels ploxions « écran » on veut sur mobile : RepoVerse + Ideas-Map = oui ? Labo (terminal VPS admin) = on le laisse desktop-only (chill/sécu) ou mobile aussi ?
  3. Forme du plein écran mobile (Phase 2) : une feuille qui monte du bas (comme les panneaux .mcd-panel actuels) ou un overlay full-page ? (la feuille = plus cohérent avec le dock mobile existant.)

§3Constat — pourquoi c'est cassé sur mobile

§4Deux types de ploxions

  • À URL (page server-rendered, vraie route) : finance/finance, calendar/calendrier. Ouvrable de partout (juste un lien).
  • « Écran » client-side (pas d'URL, app JS montée dans une fenêtre) : repoverse, ideas-map, labo. S'ouvrent uniquement via le window-manager jOS.openPloxion().

§5Deux registres de nav

  • config/apps.php → construit le menu du cube mobile ($mcdLinks + $mcdAdmin) ET le launchpad desktop. Consommé dans resources/views/partials/_mobile_nav.blade.php (~l.39-55).
  • config/ploxions.php → construit window.__PLOXIONS__ (window-manager) + les tuiles ploxion du launcher. Consommé dans resources/views/ploxions/_manifest.blade.php.

§6Les 3 causes imbriquées

  1. Calendrier n'est PAS dans config/apps.php → il n'entre jamais dans le menu mobile (qui se bâtit seulement depuis apps.php), alors que la route /calendrier existe (routes/web.php, groupe calendar., middleware auth). → invisible sur mobile.
  2. Finance / Notes SONT dans apps.php (groupe « Système », admin => true) → ils tombent dans $mcdAdmindéjà atteignables via le panneau Admin du cube mobile (José ne le sait peut-être pas — à confirmer).
  3. Ploxions « écran » (repoverse, ideas-map, labo) :
    • jOS.openPloxion(id) fait if (!isDesktop()) return null; (_window_manager.blade.php ~l.354 ; isDesktop() = min-width: 769px) → ne fait rien sur mobile.
    • Les tuiles sont masquées en CSS sur mobile : .app-group--px { display:none } (_app_launcher.blade.php ~l.103, @media (max-width:768px)). → totalement injoignables sur téléphone.

§7Objectif

Sur mobile, pouvoir atteindre tout ploxion auquel j'ai droit, en respectant le gating (admin / auth) et le « droit au silence » §4.4 (rien rendu au client pour un ploxion non autorisé). Priorité immédiate : Calendrier.


§8Plan en phases shippables (du plus chill au plus gros)

§9Phase 1 — Ploxions à URL dans le menu mobile ⟵ règle le besoin « Calendar »

Quoi : surfacer les ploxions qui ont une config['url'] (Calendrier, Finance) dans le menu du cube mobile (et le launchpad desktop, même source).

: resources/views/partials/_mobile_nav.blade.php, là où se bâtissent $mcdLinks / $mcdAdmin (~l.39-55). Ajouter une passe sur config('ploxions.ploxions') filtrée enabled === true && !empty(config['url']), en rangeant chaque item selon son gating :

  • admin => true → dans $mcdAdmin (panneau Admin).
  • auth => true → dans $mcdLinks mais seulement si auth()->check() (sinon rien).
  • ni l'un ni l'autre → public, dans $mcdLinks. Item construit : [routeOrUrl, href=config['url'], icon, name] (l'icône ploxion est un emoji ; le menu mobile attend une classe FA → soit on mappe, soit on autorise l'emoji).

Pourquoi (A) plutôt que (B) : source unique = pas de drift, et tout futur ploxion à URL apparaît automatiquement partout. (B) marche aussi mais duplique l'info et oblige à inventer un flag auth dans apps.php.

Résultat : Calendrier apparaît dans le menu mobile (pour un connecté) → ouvre /calendrier en pleine page. Finance reste dans le panneau Admin (déjà le cas). CSS/Blade only, routes déjà déployées → deploy-safe (pas impacté par le bug route:cache).

§10Phase 2 — Ploxions « écran » en plein écran sur mobile

Quoi : les ploxions client-side (RepoVerse, Ideas-Map, [Labo ?]) doivent pouvoir s'ouvrir sur mobile. Pas de fenêtres flottantes sur téléphone → on les monte en plein écran (feuille mobile / overlay), comme une vraie app de tel.

:

  • _window_manager.blade.php openPloxion(id) (~l.351-366) : au lieu de return null quand !isDesktop(), monter l'app cliente (window.jOSApps[ploxion.app]) dans un conteneur plein écran avec une barre minimale (titre + ✕ fermer), sans le chrome du site (réutiliser le mode is-embedded / la mécanique des panneaux .mcd-panel).
  • Lanceur mobile : lever / remplacer .app-group--px { display:none } (_app_launcher ~l.103) par des entrées ploxion cliquables dans le menu du cube (section « Ploxions »).

Décisions : cf. #2 et #3 ci-dessus.

Note : plus gros (JS window-manager + nouvelle UI plein écran mobile) → à faire après la Phase 1 et après checkpoint avec José.

§11Phase 3 (option, spéculatif) — un vrai « launchpad mobile »

Une grille d'apps plein écran sur mobile (home façon iPhone) regroupant Espaces + Ploxions + Admin, au lieu du seul menu-liste du cube. Plus « OS ». À valider, pas prioritaire.


§12Contraintes & notes deploy

  • /calendrier et /finance = routes déjà déployées → Phase 1 n'ajoute aucune route → pas bloquée par le bug route:cache prod (§4 roadmap).
  • Calendar & Finance ont besoin de leurs tables DB en prod (php artisan migrate --force
    • cache vidé via hook post-merge). À vérifier : sinon /calendrier renvoie 500 (mobile ET desktop, indépendamment de ce plan).
  • Gating à respecter dans le menu : Calendrier = auth (connecté), Finance/Labo = admin. Ne jamais exposer un lien à qui n'y a pas droit (« ne pas nuire » + silence §4.4).
  • Icônes : config/ploxions.php utilise des emojis ; le menu mobile ($mcdLinks) rend des classes Font Awesome (fa-solid …). Phase 1 doit gérer ce mismatch (autoriser l'emoji dans le rendu, ou mapper).

§13Fichiers concernés (pour l'implémentation)

  • config/apps.php — registre nav (menu/launchpad).
  • config/ploxions.php — registre ploxions (manifeste/écrans).
  • resources/views/partials/_mobile_nav.blade.php — menu cube mobile + dock desktop (build $mcdLinks/$mcdAdmin).
  • resources/views/partials/_app_launcher.blade.php — tuiles du launchpad (dont .app-group--px masqué mobile).
  • resources/views/partials/_window_manager.blade.phpjOS.openPloxion() / isDesktop().
  • resources/views/ploxions/_manifest.blade.php — émission window.__PLOXIONS__.
  • public/css/mobile-chill.css — styles dock/menu mobile (Phase 2 : plein écran).

Statut : draft · Licence : AGPL-3.0 · 17.06.2026 · ploxions-mobile

NEURAL LOAD: 87%
THOUGHT CRIMES: 13
OVERSEER: XERBOXION
REALITY STATUS: LOADING...
j0bot.ch
Spotify
Spotify · clic pour lancer
📞 Appel
⏺ records
00:00
mes records (locaux, persistants)
aucun record
🎨 ploxion-theme ×