$mol funziona in qualsiasi editor, ma un piccolo insieme di strumenti rende .view.tree e gli stili tipizzati molto più comodi: uno scaffolder di progetto, un language server, le integrazioni per gli editor Zed e VS Code e una skill che insegna il framework agli assistenti LLM.
create-view-tree-lsp genera un modulo $mol pronto all'uso, così non devi mettere insieme il boilerplate a mano:1npxcreate-view-tree-lspbog/myappEseguilo dalla radice della tua copia di MAM: i percorsi dei moduli partono da lì, ed è lì che il progetto deve stare. Fuori da un workspace il comando avvisa, invece di lasciartelo scoprire alla prima build.L'argomento è il percorso del modulo (namespace/name, o l'equivalente bog_myapp). Scrive view.tree, view.ts, view.css.ts e index.html per un'app funzionante, più le GitHub Actions per il deploy.Tutto ciò che il generatore sa aggiungere è incluso per impostazione predefinita. Nomini solo ciò che non vuoi:1npxcreate-view-tree-lspbog/myapp--no-tauri--no-backend--no-baza — uno store local-first Giper Baza--no-docker — una configurazione Docker con docker-compose.yml e config nginx--no-tauri — un guscio desktop Tauri--no-backend — un backend REST $mol_server con storage node:sqlite e un tipo di item TypeScript condiviso--no-prerender, --no-seo — la visibilità per i motori di ricerca, descritta più sotto sotto Integrazione continuaUn flag sconosciuto interrompe l'esecuzione, così un refuso non può lasciare dentro qualcosa in silenzio.Lo scaffolder è un sottile wrapper attorno alla CLI del language server, quindi npxview-tree-lspcreatebog/myapp fa la stessa cosa direttamente.
Le traduzioni stanno accanto al proprio modulo, in <modulo>/<nome>.locale=<lang>.json. Al codice fa comodo, al traduttore molto meno: invece di un elenco di frasi riceve trenta file minuscoli.$yuf_localizer colma questa distanza. Indicagli gli URL dei progetti e i codici lingua e mostra tutte le chiavi in un unico elenco ricercabile, segnalando ciò che resta da fare: chiavi presenti solo in inglese, chiavi modificate ma non ancora salvate, e chiavi obsolete che il progetto non ha più. Le traduzioni restano nel browser finché non le esporti, quindi tra una sessione e l'altra non si perde nulla.Quando il traduttore ha finito, esporta il risultato e ridistribuiscilo tra i moduli:1# dalla radice di MAM2npxview-tree-lsplocalebog/myapp/app/---exclude=mol--updateL'argomento è una cartella o un singolo file di locale. Opzioni:Ogni chiave porta con sé il percorso del proprio modulo, così $my_page_greeting finisce in my/page/page.locale=ru.json, accanto ai sorgenti a cui appartiene. Capire quale sia quel modulo, però, è più sottile di quanto sembri: _ separa sia cartelle sia parole, quindi il percorso corrispondente più lungo è la risposta sbagliata. In $my_page_lang_hint la proprietà inizia con lang, e un vero sottomodulo my/page/lang accanto si prenderebbe la chiave. Perciò il comando chiede a ogni modulo candidato quali chiavi dichiara — MAM scrive esattamente quelle nel suo file di locale sotto -view.tree — e assegna la chiave a chi la possiede.