Vyskúšal som tauri a bol som celkom spokojný s výsledkom. Tauri produkuje jediný binárny súbor s UI vytvoreným vo webových frontendových technológiách, ktoré milujeme nenávidieť – ako React, Vue alebo dokonca Svelte. Kúzlo sa skrýva v Ruste.
Hlavným konkurentom Tauri je zdanlivo Electron. Hoci je Electron celkom populárny a raz som ho použil aj v produkcii, jeho reputácia je poznačená vysokou pamäťovou náročnosťou a bezpečnostnými zraniteľnosťami. Na druhej strane, všetko, čo súvisí s Rustom, je marketingovo prezentované ako bezpečnejšie.
Bootstrapping je možné vykonať pomocou create-tauri-app. Vyzve vás, aby ste si pozreli systémové požiadavky – Arch je zahrnutý, ale pamätám si, že som ho mal už nastavený. Používam niektorý softvér súvisiaci s Rustom, ktorý treba skompilovať, napríklad paru, takže s tým to možno súvisí.
npx create-tauri-app
Pre Svelte, môj obľúbený JS frontend, je najprv potrebné zvoliť
@vitejs/create-app a v podmenu sa ponúka svelte aj svelte-ts pre
TypeScript. Proces buildu vypíše nasledujúcu chybu:
>> Running final command(s)
internal/modules/cjs/loader.js:883
throw err;
^
Error: Cannot find module '~/tauri/sdfsfd/node_modules/esbuild/install.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
at Function.Module._load (internal/modules/cjs/loader.js:725:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Error with command: node
Error: Error: Command failed with exit code 1: node ./node_modules/esbuild/install.js
at ~/.npm/_npx/14052/pnpm-global/4/node_modules/.pnpm/create-tauri-app@1.0.0-beta.1/node_modules/create-tauri-app/dist/index.js:63:15
at Generator.throw (<anonymous>)
at rejected (~/.npm/_npx/14052/pnpm-global/4/node_modules/.pnpm/create-tauri-app@1.0.0-beta.1/node_modules/create-tauri-app/dist/index.js:40:65)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Ešte som neprišiel na to, ako sa jej zbaviť, ale pokúsil som sa pokračovať napriek nej:
pnpm install
Tu žiadne problémy. A nakoniec:
pnpm run tauri build
Čas buildu na mojom stroji je dosť dlhý:
time pnpm run tauri build
Výsledok bol 145.47s user 1.42s system 298% cpu 49.285 total.
Pozrime sa na veľkosť skompilovaného spustiteľného súboru:
du -h ./src-tauri/target/release/tarui-app
Môj systém vypísal 26M. Skúsil som ho spustiť:
./src-tauri/target/release/tarui-app
Fungoval to napriek vyššie spomínanej chybe. Dúfam, že budem mať čoskoro príležitosť preskúmať viac funkcií tauri.
Toto je 87. príspevok série #100daystooffload.