Tauri & ReactJS - Creating Modern Desktop Apps (read desc.)

elibro
14 Jan 202208:26

Summary

TLDRВидео объясняет, как использовать Taure для создания настольных приложений из веб-приложений, избегая необходимости использования Chromium браузера. Автор показывает процесс настройки Taure на Windows, начиная с установки Microsoft Visual Studio и Node.js. Затем объясняется, как создать новый проект React и интегрировать его с Taure, добавляя необходимые зависимости и настройки. Видео охватывает решение проблем, которые могут возникнуть при установке, и демонстрирует конечный результат - рабочее настольное приложение с иконкой и инсталлятором. Автор делится своими трудностями и надеется, что зрители смогут избежать подобных проблем.

Takeaways

  • 🌐 Tarry позволяет использовать веб-приложение на настольном компьютере без браузера, обращаясь к локальным ресурсам.
  • 🛠️ Для начала работы с Tarry необходимо установить Microsoft Visual Studio Build Tools или Visual Studio 2022.
  • ☕️ Во время установки Visual Studio рекомендуется установить Node.js, если он ещё не установлен.
  • 📦 Yarn уже включен в состав Visual Studio, поэтому не требует отдельной установки.
  • 🔧 Установка Rust и Cargo, пакетного менеджера, также необходима для работы с Tarry.
  • 📁 Создание нового проекта Tarry начинается с создания папки проекта и использования React и других инструментов.
  • 🔄 Используя `create-react-app`, можно начать разработку веб-приложения, которое будет использоваться в Tarry.
  • 🛑 Необходимо настроить React, чтобы избежать автоматического запуска браузера при старте приложения.
  • 🔗 Добавление зависимостей и разрешений для корректной работы приложения с Tarry.
  • 🏗️ Используя `yarn towery dove`, можно интегрировать Tarry с существующим проектом и создать установщик.
  • 🎉 В результате интеграции Tarry с проектом получается готовая установка с иконкой и без необходимости использовать полноценный браузер.

Q & A

  • Что такое Tarry и как оно отличается от Electron?

    -Tarry - это инструмент для создания приложений для настольных систем на основе веб-приложений. В отличие от Electron, который использует полноценный Chromium-браузер, Tarry использует web view в системе, что позволяет уменьшить размер приложения и не перегружать пользователя браузером.

  • Какие инструменты необходимо установить для начала работы с Tarry на Windows?

    -Для начала работы с Tarry на Windows необходимо установить Microsoft Visual Studio Build Tools, Node.js и Rust с пакетным менеджером Cargo.

  • Почему может потребоваться установка Microsoft Visual Studio 2022?

    -Microsoft Visual Studio 2022 может потребоваться для поддержки последних технологий и функций, которые могут быть необходимы для сборки и разработки приложений с использованием Tarry.

  • Что такое Yarn и как оно используется в контексте Tarry?

    -Yarn - это менеджер пакетов, предоставляющий более быструю и надежную работу с зависимостями в проектах. В контексте Tarry, Yarn используется для установки зависимостей и управления проектом.

  • Как создать новый проект для интеграции с Tarry?

    -Для создания нового проекта с Tarry, следует сначала создать папку проекта, затем использовать 'create-react-app' для инициализации React-приложения и после этого интегрировать Tarry с помощью команды 'yarn tarry add'.

  • Что такое 'cross-env' и зачем его устанавливают в проекте?

    -'cross-env' - это инструмент для установки переменных среды в проектах, который работает на всех платформах. Он устанавливается для того, чтобы избежать проблем с переменными среды и обеспечить кросс-платформенную совместимость.

  • Почему может потребоваться установка пакета 'cross-env'?

    -Установка 'cross-env' может быть необходимой для того, чтобы корректно управлять переменными среды и обеспечить работу приложения на различных операционных системах.

  • Что означает 'yarn build' и какую функцию оно выполняет?

    -'yarn build' - это команда, которая собирает проект в продакшн-версию. Это включает в себя минификацию кода, оптимизацию ресурсов и другие шаги для подготовки приложения к развертыванию.

  • Какие проблемы могут возникнуть при интеграции Tarry с существующим проектом?

    -Возможные проблемы при интеграции Tarry могут включать в себя несовместимость версий зависимостей, проблемы с конфигурацией среды и ошибки в сборке проекта.

  • Чему научить пользователей интеграция Tarry с веб-приложениями?

    -Интеграция Tarry с веб-приложениями позволяет пользователям создавать настольные приложения на основе существующих веб-технологий без необходимости использовать полноценный браузер.

  • Какие дополнительные настройки могут потребоваться для корректной работы Tarry?

    -Для корректной работы Tarry может потребоваться настройка доступа к локальным ресурсам, настройка иконок приложения и создания инсталлятора для развертывания приложения.

Outlines

00:00

🌟 Интеграция с Tauri на Windows

Этот раздел объясняет, как использовать Tauri для переноса вашего веб-приложения на настольный компьютер. Tauri позволяет использовать локальные ресурсы, не требуя полного браузера, используя Rust для серверной части. Вначале необходимо установить инструменты Microsoft Visual Studio, а затем Node.js, если он еще не установлен. После этого устанавливаются Yarn, Rust и Cargo. Указывается, что необходимо создать новый проект Tauri или интегрировать его в существующий проект. Для этого создается новая папка проекта, например, 'r2d2', и запускается Create React App. Важно добавить необходимые зависимости и разрешения, чтобы React-приложение не сломалось.

05:00

🚀 Завершение настройки и запуск проекта

Этот раздел продолжает инструкцию по настройке проекта с Tauri. Объясняется, как избежать открытия браузера при запуске приложения, используя Cross-Env для установки переменной 'browser' в значение 'none'. Затем выполняется команда 'yarn build' для сборки проекта. Описывается процесс установки API и завершение настройки. В конце показывается, как создать инсталлятор для приложения, и где найти собранный релиз. Автор делится своими трудностями и надеется, что у других пользователей процесс пройдет гладко.

Mindmap

Transcripts

play00:00

tarry is what you can use to take your

play00:03

web app

play00:04

so your friend and app

play00:06

and then

play00:08

use

play00:09

on a desktop so instead of the browser

play00:12

your

play00:12

you now can access the local resources

play00:16

if you want it to

play00:18

okay so it's like an electron

play00:21

but not

play00:23

a chromium browser so instead of

play00:26

instead of shipping a whole browser you

play00:29

just use the web view in the underlying

play00:32

system which is what this is about and

play00:35

it uses rust to do that

play00:38

so

play00:39

if you want to do some back and stuff

play00:40

it'll be in rust

play00:43

anyways let's get started we just go

play00:45

integrate with towery nope

play00:47

we gotta do setup for windows

play00:52

so the first thing you'll need is to

play00:55

install these microsoft visual studio

play00:57

sequential build tools go here build it

play01:00

or if you already have visual studio

play01:04

2022

play01:05

you're good

play01:06

and i already have it and anyways build

play01:08

it and do not go grab a coffee

play01:11

because you want to do this other stuff

play01:13

so while that's downloading and

play01:14

installing

play01:16

you want to have node.js installed and

play01:20

this is if you already have node.js you

play01:22

don't really need to worry about this

play01:24

this is only if you don't have node.js

play01:25

you should do it this way

play01:27

i remember to

play01:30

run your

play01:31

run it in administrative mode

play01:34

when you're

play01:35

doing this stuff

play01:36

after you install nbm

play01:42

now yarn is already pre-installed so you

play01:44

don't have to worry about that

play01:45

rusty

play01:47

and by worry about that i mean worry

play01:48

about installing it rusty and cargo

play01:50

package manager so

play01:52

yeah install rust

play01:54

pretty sure you guys already have rust

play01:56

installed because

play01:57

you only found out about towering

play01:59

through rust i didn't really find out

play02:01

about tarry i don't think you'd find out

play02:03

about terry from the front end side but

play02:05

even though they act like you'd find it

play02:07

through the front-end side

play02:09

no web view two

play02:11

the first time i actually read this as

play02:12

windows 10 not 11

play02:14

and i did not install it so only install

play02:17

this if things don't work

play02:19

which

play02:20

they do work for me so yeah

play02:24

because i already haven't edge installed

play02:26

it's installed by default so i don't

play02:28

really get why it wouldn't be installed

play02:30

anyways let's go

play02:34

to integrate with terry

play02:38

now what they recommend is starting a

play02:40

new tarry project no this is if you're a

play02:43

noob

play02:44

and you don't know javascript or

play02:46

anything about javascript

play02:48

then you do this because then all you

play02:49

have is an index.html

play02:52

and you can do whatever you want a

play02:53

static

play02:54

a website that runs on a desktop app

play02:58

so we'll scroll down here and this is

play02:59

what you need

play03:00

add tower to existing project

play03:03

so cd into the project folder and then

play03:05

we add it but now you're saying wait a

play03:07

second we don't have a project folder so

play03:09

what you want to do is create a project

play03:11

folder

play03:12

and i've called it r2d2 and i'm using

play03:15

react and i'm going to be using the

play03:17

react jack js

play03:19

so what we want to do is

play03:21

create react app

play03:25

okay

play03:26

so we run that and

play03:28

since we're already in the project

play03:29

folder

play03:30

we do dot

play03:32

so after we do that

play03:34

we actually want to add we want to go

play03:36

through with this but don't just copy

play03:38

this we actually need some other stuff

play03:40

because

play03:42

if you

play03:43

know anything about react

play03:46

okay so i'll show you what i mean so if

play03:48

we start the react app

play03:53

it'll take some time

play03:55

but

play04:00

what happens is

play04:04

what happens is that

play04:12

i'll show you guys as soon as

play04:15

there you go see the browser opens up so

play04:18

when we're using towery we don't want

play04:19

the browser to open up because it'll

play04:21

open up a desktop app

play04:22

so anyways we go here

play04:25

and we want to install the cross end

play04:27

thing

play04:28

and the cli

play04:31

and

play04:32

we can skip this because it'll just be

play04:34

done here

play04:40

so we've done this and

play04:43

we've added these dev dependencies

play04:45

and the next thing we want to do is add

play04:47

resolutions

play04:48

so that the react app doesn't break

play04:51

and what i mean by this is look at this

play04:54

it'll break

play04:58

or it should break because

play05:00

this did not get

play05:01

resolved yet

play05:04

but

play05:05

yeah

play05:08

there you go see it didn't install

play05:10

so it broke and that's what i had

play05:13

trouble for an hour

play05:15

not fun man not fun at all

play05:18

and if we build it it'll work so i'm not

play05:20

gonna see it it works

play05:23

so we just do that and

play05:28

we don't care about finishing it

play05:32

anyways i think i forgot to mention why

play05:34

we need

play05:35

this thing

play05:37

and

play05:38

i'll show you as soon as i initialize

play05:40

the app

play05:41

but

play05:46

lenerva is the name of my company

play05:50

now for the assets it's in source

play05:55

or

play05:56

hold up

play05:58

it could be in build

play06:01

so we'll come back to that actually

play06:04

and you know what we'll come back to it

play06:07

right now

play06:08

we don't want to forget about it you

play06:11

know what i mean

play06:12

so we see here we go we install the api

play06:14

thing

play06:16

but let me just

play06:18

let me just squeeze that in really

play06:19

quickly

play06:22

anyways as i was saying cross end okay

play06:25

so we need it because

play06:27

we need we don't want to open the

play06:28

browser so what we do is we run yarn

play06:32

cross end and then we need to set

play06:35

browser to none

play06:36

and after that we can continue with yarn

play06:38

start

play06:40

now the same way before we build we need

play06:43

to say yarn build

play06:45

and

play06:46

what yarn build will do is you'll see

play06:49

here

play06:50

the build is being built over here so if

play06:52

we do yarn build right now

play06:54

just so

play06:56

it can be cached later on

play07:00

we can see something there but as that's

play07:02

building we can continue on our journey

play07:07

i'll skip this because

play07:09

i think things are working now

play07:12

so all we do is run yarn towery dove and

play07:19

anyways here we go here's the stuff

play07:22

and

play07:23

that's pretty good and one more thing

play07:25

right

play07:27

we want to do

play07:30

this

play07:31

this is the

play07:33

so i'm just going to do this and then

play07:35

i'm going to call it a day

play07:37

it even made the installer for me

play07:39

how awesome is that

play07:41

where is this release okay target

play07:44

release

play07:45

so

play07:46

start target

play07:48

release

play07:50

r2t2 bro r2t2

play07:53

man i am

play07:55

oh it has an icon as well r2t2

play07:58

yo look at that look at that

play08:01

so there you go there's getting started

play08:03

with towery i hope

play08:05

i covered everything and now you can

play08:07

just focus on the code

play08:09

i had a lot of difficulties getting to

play08:11

this point but i hope

play08:14

you guys

play08:16

have had the smoothest ride ever

play08:19

and don't have to think about the

play08:21

problems i encountered because i've

play08:23

encountered a lot

play08:25

so yeah see ya

Rate This

5.0 / 5 (0 votes)

Связанные теги
TarryReactНастольноеПриложениеРуководствоРазработкаВебВиевRustКроссПлатформенностьУстановкаКодирование