Pubblicato un nuovo aggiornamento per nx.js, la piattaforma utilizza JavaScript e TypeScript per lo sviluppo di applicazioni homebrew della console Nintendo Switch.
Questo strumento è basato sul motore QuickJS e consente di eseguire script direttamente sulla console Nintendo Switch.
Molte delle API web comuni, come fetch
, setTimeout
, Audio
e Canvas
, sono supportate su questa piattaforma, il che rende più agevole il lavoro per gli sviluppatori web che desiderano creare software per la Switch.
Inoltre, nx.js offre API speciali specifiche per la console Switch, fornendo un ambiente di sviluppo completo per la creazione di programmi homebrew. Gli sviluppatori possono trovare ispirazione e esempi su GitHub per iniziare rapidamente con il loro progetto.
Una caratteristica interessante di nx.js è la possibilità di creare applicazioni più complesse utilizzando npm (Node Package Manager) e quindi impacchettarle come file NRO.
Questo processo coinvolge l’utilizzo di esbuild per raggruppare il codice JavaScript, consentendo anche l’uso di TypeScript per lo sviluppo. Inoltre, i file nella directory “romfs” vengono compressi nell’NRO, semplificando la distribuzione delle applicazioni.
L’aggiornamento più recente, nella versione 0.0.32, include modifiche alle patch per migliorare la gestione dei file e delle classi. Inoltre, vengono aggiornati i pacchetti e corretti alcuni errori minori.
Caratteristiche
- Sviluppo in JavaScript: Scrivi applicazioni homebrew per Nintendo Switch utilizzando JavaScript, un linguaggio di programmazione popolare e ampiamente supportato.
- API di alto livello: Beneficia di un’API JavaScript di alto livello progettata specificamente per la piattaforma Nintendo Switch, offrendo facile accesso a funzionalità e caratteristiche specifiche della console.
- Gestione dell’Input: Cattura e elabora l’input dell’utente con facilità, inclusi pulsanti, touchscreen e controlli di movimento, per creare esperienze di gioco coinvolgenti.
- Grafica e UI: Crea interfacce utente visivamente accattivanti e interattive utilizzando l’API Canvas web.
- Supporto audio: Integra la riproduzione audio e gli effetti sonori nelle tue applicazioni utilizzando l’API Audio web.
- WebAssembly: Supporto per l’esecuzione di codice compilato in WebAssembly (WASM).
Per iniziare, seguire questi passaggi
- Configurare un firmware personalizzato sulla console Switch per consentirle di eseguire applicazioni homebrew (istruzioni).
- Scaricare il file
nxjs.nro
. - Creare un file chiamato
nxjs.js
con il seguente contenuto:console.log('Hello Switch, from JavaScript!');
- Copiare entrambi i file nella directory
/switch
sulla scheda SD. - Avviare l’applicazione.
Consultare la documentazione dell’API per ulteriori dettagli e dare un’occhiata alla directory delle app per trovare altri esempi.
Creazione di un’applicazione
- Per creare un’applicazione, eseguire il seguente comando per avviare la creazione di un’applicazione nx.js:
npm create nxjs-app@latest
Potrete scegliere uno degli esempi di applicazioni come punto di partenza. Seguendo le istruzioni verrà creata successivamente una nuova directory con il nome del progetto inserito.
I seguenti script nel file package.json
sono configurati:
build
: Raggruppa il codice dell’applicazione in un singolo file JavaScript utilizzando esbuild.nro
: Incapsula l’applicazione raggruppata (+ eventuali altri file nella directory romfs) in un file.nro
autocontenuto.
Changelog v0.0.32
nxjs-runtime@0.0.32
Modifiche alle patch
- Corretto
Switch.remove()
eSwitch.removeSync()
quando il percorso non esiste (8311c6ebe340ab75308d82aaa0d7c2a8acdddb44
)
Changelog v0.0.31
nxjs-pack@0.0.31
Modifiche alle patch
- Collega la versione del pacchetto alla versione di
nxjs-runtime
(6e502b2f77ad819b19acfdfaa7394e607ce2f913
).
nxjs-runtime@0.0.31
Modifiche alle patch
- Aggiunta la classe
TouchList
(910cec0f598543d18943f00eaa35f2415945ffa
).
Changelog v0.0.30
nxjs-runtime@0.0.30
Modifiche alle patch
- Correzione
Switch.statSync()
(df7b564f2e6ee5a65a50afdc1c6d00d9c813984b
). - Correzione
Switch.removeSync()
sui file (977c19f13836e7cd0c243576ad2655db88bc49f
).
Changelog v0.0.29
nxjs-runtime@0.0.29
Modifiche alle patch
- Imposta il campo “author” in
package.json
in base alla configurazione di Git (27d9ce1437f64efb87078ccdeb2fcaa33941d0cf
). - Aggiunte le versioni dei singoli pacchetti al file JSON dei metadati (
fb36e837c83c05c14741772d5084fe8d183cbc4f
). - Aggiunta l’applicazione di esempio
repl-server
(342e6c141fa1de066adbcd69ac84adba2b59990d
).
@nx.js/repl@0.0.2
Modifiche alle patch
- Aggiunto il supporto iniziale per
await
(1d22e9d4637ef0d302e01119615fde123fe8a407
). - Aggiunto il pacchetto
@nxjs/repl
(63b9fc3e8e47b20875b91703f311cc36d8feeb82
).
nxjs-runtime@0.0.29
Modifiche alle patch
- Gestione degli
"<input>"
come nome di file nella traccia di stack (a6ac8db6b9ad87574cac9d0686e9df80e4387616
). - Imposta l’indice di riferimento circolare per
Switch.inspect()
(b8da2c13f4615ddd8836734ac66e19c634576c09
).
Download: nx.js v0.0.32
Download: Source code nx.js v0.0.32
Fonte: github.com