Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

translate: docs/1.getting-started/1.indroduction.md #59

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 51 additions & 52 deletions docs/1.getting-started/1.introduction.md
Original file line number Diff line number Diff line change
@@ -1,95 +1,94 @@
---
navigation.icon: uil:info-circle
description: Nuxt's goal is to make web development intuitive and performant with a great Developer Experience in mind.
description: Мета Nuxt — зробити веб-розробку інтуїтивно зрозумілою та продуктивною з урахуванням чудового Досвіду Розробника.
---

# Introduction
# Вступ {#introduction}

Nuxt is a free and [open-source framework](https://github.com/nuxt/nuxt) with an intuitive and extendable way to create type-safe, performant and production-grade full-stack web applications and websites with [Vue.js](https://vuejs.org).
Nuxt — це безкоштовний [фреймворк із відкритим кодом](https://github.com/nuxt/nuxt) із інтуїтивно зрозумілим і розширюваним способом створення type-safe, продуктивних та готових до використання фулстек веб-застосунків і веб-сайтів за допомогою [Vue.js](https://vuejs.org).

We made everything so you can start writing `.vue` files from the beginning while enjoying hot module replacement in development and a performant application in production with server-side rendering by default.
Ми зробили все, щоб ви могли почати писати файли `.vue` з самого початку, насолоджуючись швидкою зміною модулів у розробці та продуктивним застосунком у виробництві з відтворенням на стороні сервера за промовчанням.

Nuxt has no vendor lock-in, allowing you to deploy your application [**anywhere, even to the edge**](/docs/getting-started/deployment).
У Nuxt немає прив’язки до постачальника, що дозволяє розгортати вашу програму [**будь-де, навіть за межами**](/docs/getting-started/deployment).

## Automation and Conventions
## Автоматизація та домовленості {#automation-and-conventions}

Nuxt uses conventions and an opinionated directory structure to automate repetitive tasks and allow developers to focus on pushing features. The configuration file can still customize and override its default behaviors.
Nuxt використовує домовленості та опціональну структуру каталогів для автоматизації повторюваних завдань і дозволяє розробникам зосередитися на додавані функціоналу. Файл конфігурації продовжує надавати змогу налаштувати та змінити поведінку за промовчанням.

::list{type=success}
- **File-based routing:** define routes based on the structure of your [`pages/` directory](/docs/guide/directory-structure/pages). This can make it easier to organize your application and avoid the need for manual route configuration.
- **Code splitting:** Nuxt automatically splits your code into smaller chunks, which can help reduce the initial load time of your application.
- **Server-side rendering out of the box:** Nuxt comes with built-in SSR capabilities, so you don't have to set up a separate server yourself.
- **Auto-imports:** write Vue composables and components in their respective directories and use them without having to import them with the benefits of tree-shaking and optimised JS bundles.
- **Data-fetching utilities:** Nuxt provides composables to handle SSR-compatible data fetching as well as different strategies.
- **Zero-config TypeScript support:** write type-safe code without having to learn TypeScript with our auto-generated types and `tsconfig.json`
- **Configured build tools:** we use [Vite](https://vitejs.dev) by default to support hot module replacement (HMR) in development and bundling your code for production with best-practices baked-in.
- **Роутинг на основі файлів:** визначте маршрутів на основі структури вашого [каталогу `pages/`](/docs/guide/directory-structure/pages). Це може зробити оргазацію вашого застосунку простішим та уникнути необхідности налаштування маршрутів вручну.
- **Розбиття коду:** Nuxt автоматично розбиває ваш код на менші частини, що може допомогти скоротити час початкового завантаження вашого застосунку.
- **Рендеринг на стороні серверу з коробки:** Nuxt підтримує вбудовані можливості SSR, тож вам не потрібно самостійно встановлювати окремий сервер.
- **Автоматичний імпорт:** пишіть Vue композиційні функції та компоненти у їх відповідних каталогах та використовуйте їх без необхідності додавання з перевагами tree-shaking та оптимізації пакетів JS.
- **Утиліти отримання данних:** Nuxt додає композиційні фукнкції для обробки отримання данних, сумісного з SSR, а також за різними стратегіями.
- **Підтримка TypeScript без конфігурації:** пишіть type-safe код без необхідності вивчати TypeScript разом з нашими автоматично згенерованих типів та `tsconfig.json`
- **Налаштовані інструменти збірки:** ми використовуємо [Vite](https://vitejs.dev) як основну підтримку можливості швидкої зміни модулів (HMR) у розробці та побудові вашого коду для виробництва з найкращими практиками.
::

Nuxt takes care of these and provides both frontend and backend functionality so you can focus on what matters: **creating your web application**.
Nuxt піклується про це та підтримує обидві фронтенд та бекенд технології, що допомагая вам зосередитись на важливому: **створенні вашого веб-застосунку**.

## Server-Side Rendering
## Рендеринг на стороні серверу {#server-side-rendering}

Nuxt comes with built-in server-side rendering (SSR) capabilities by default, without having to configure a server yourself, which has many benefits for web applications:
Nuxt підтримує вбудовані можливості рендерингу на стороні серверу SSR, тож вам не потрібно самостійно встановлювати окремий сервер, що має багато переваг для веб-застосунків:

::list{type=success}
- **Faster initial page load time:** Nuxt sends a fully rendered HTML page to the browser, which can be displayed immediately. This can provide a faster perceived page load time and a better user experience (UX), especially on slower networks or devices.
- **Improved SEO:** search engines can better index SSR pages because the HTML content is available immediately, rather than requiring JavaScript to render the content on the client-side.
- **Better performance on low-powered devices:** it reduces the amount of JavaScript that needs to be downloaded and executed on the client-side, which can be beneficial for low-powered devices that may struggle with processing heavy JavaScript applications.
- **Better accessibility:** the content is immediately available on the initial page load, improving accessibility for users who rely on screen readers or other assistive technologies.
- **Easier caching:** pages can be cached on the server-side, which can further improve performance by reducing the amount of time it takes to generate and send the content to the client.
- **Швидкий час завантаження сторінки**: Nuxt надсилає повністю відтворену HTML-сторінку до браузера, яку можна відобразити міттєво. Це може забезпечити швидший сприйнятний час завантаження сторінки та кращий досвід користувача (UX), особливо на повільних мережах або пристроях.
- **Покращений SEO:** пошукові системи можуть краще індексувати SSR-сторінки, оскільки HTML-вміст доступний міттєво, а не вимагає JavaScript для відтворення вмісту на стороні клієнта.
- **Більша ефективність на слабких пристроях**: це зменшує обсяг JavaScript, який неохідно завантажити та виконати на стороні клаєнта, що може бути важливо для слабких пристроїв, що можуть чинити супротив важким JavaScript застосункам.
- **Краща доступність:**: вміст є міттєво доступним під час початкового завантаження сторінки, покращуючи доступність для користувачів, які покладаються на програми зчитування з екрану чи інши допоміжні технології.
- **Полегшене кешування:** сторінка може бути закешована на стороні сервера, що може ще більше підвищити ефективність за рахунок скорочення часу, необхідного для створення та надсилання вмісту клієнту.
::

Overall, server-side rendering can provide a faster and more efficient user experience, as well as improve search engine optimization and accessibility.
Загалом рендеринг на стороні серверу може забезпечити швидшу та ефективнішу взаємодію з користувачем, а також покращити систему пошукової оптимізації (SEO) та доступність.

As Nuxt is a versatile framework, it gives you the possibility to statically render your whole application to a static hosting with `nuxt generate`,
disable SSR globally with the `ssr: false` option or leverage hybrid rendering by setting up the `routeRules` option.
Оскільки Nuxt є універсальним фреймворком, він дає вам можливість статично відтворювати весь ваш застосунок на статичному хостингу за допомогою `nuxt generate`, глобально вимкнувши SSR за допомогою параметра `ssr: false` або використовувати гібридне відтворення, налаштувавши параметр `routeRules`.

::alert{type="info"}
Read more about the [Nuxt rendering modes](/docs/guide/concepts/rendering).
Дійнайтеся більше про [режими Nuxt-рендерингу](/docs/guide/concepts/rendering).
::

### Server engine
### Серверний механізм {#server-engine}

The Nuxt server engine [Nitro](https://nitro.unjs.io) unlocks new full-stack capabilities.
Серверний механізм Nuxt [Nitro](https://nitro.unjs.io) розблоковує нові можливості фулстек.

In development, it uses Rollup and Node.js workers for your server code and context isolation. It also generates your server API by reading files in `server/api/` and server middleware from `server/middleware/`.
У розробці, він використовує Rollup та Node.js workers для вашого серверного коду та ізоляції контексту. Він також генерую серверне API, зчитуючи файли в `server/api/` та серверні middleware з `server/middleware/`.

In production, Nitro builds your app and server into one universal `.output` directory. This output is light: minified and removed from any Node.js modules (except polyfills). You can deploy this output on any system supporting JavaScript, from Node.js, Serverless, Workers, Edge-side rendering or purely static.
У виробництві Nitro збирає ваш застосунок та сервер до універсального катологу `.output`. Цей результат легкий: мінімізований та вилучений з будь-яких модулів Node.js (за винятком поліфілів). Ви маєте змогу розгорнути цей результат на будь-якій системіі, що підтримує JavaScript, від Node.js, Serverless, Workers, Edge-side rendering або повністю статичного.

::alert{type="info"}
Read more about [Nuxt server engine](/docs/guide/concepts/server-engine).
Дійнайтеся більше про [серверний механізм Nuxt](/docs/guide/concepts/server-engine).
::

### Production-ready
### Готовий до виробництва {#production-ready}

A Nuxt application can be deployed on a Node or Deno server, pre-rendered to be hosted in static environments, or deployed to serverless and edge providers.
Nuxt-застосунок можна розгонути на сервері Node або Deno, попередньо відрендерити для розміщення в статичних середовищах, або разгорнути у serverless та edge провайдерів.

::alert{type="info"}
Discover more in the [deployment section](/docs/getting-started/deployment).
Дійнайтеся більше у [розділі з розгортання](/docs/getting-started/deployment).
::

### Modular
### Модульність {#modular}

A module system allows to extend Nuxt with custom features and integrations with third-party services.
Модульна система дозволяє розширити Nuxt користувацькими функціями та інтеграцією зі сторонніми сервісами.

::alert{type="info"}
Discover more about [modules](/docs/guide/concepts/modules).
Дійнайтеся більше про [модулі](/docs/guide/concepts/modules).
::

### Architecture
### Архітектура {#architecture}

Nuxt is composed of different [core packages](https://github.com/nuxt/nuxt/tree/main/packages):
Nuxt складається з різних [основних пакетів](https://github.com/nuxt/nuxt/tree/main/packages):

::list{type=info}
- Core Engine: [nuxt](https://github.com/nuxt/nuxt/tree/main/packages/nuxt)
- Bundlers: [@nuxt/vite-builder](https://github.com/nuxt/nuxt/tree/main/packages/vite) and [@nuxt/webpack-builder](https://github.com/nuxt/nuxt/tree/main/packages/webpack)
- Command line interface: [nuxi](https://github.com/nuxt/nuxt/tree/main/packages/nuxi)
- Server engine: [nitro](https://github.com/unjs/nitro)
- Development kit: [@nuxt/kit](https://github.com/nuxt/nuxt/tree/main/packages/kit)
- Основний механізм: [nuxt](https://github.com/nuxt/nuxt/tree/main/packages/nuxt)
- Комплектувальники: [@nuxt/vite-builder](https://github.com/nuxt/nuxt/tree/main/packages/vite) та [@nuxt/webpack-builder](https://github.com/nuxt/nuxt/tree/main/packages/webpack)
- Інтерфейс командного рядка (CLI): [nuxi](https://github.com/nuxt/nuxt/tree/main/packages/nuxi)
- Серверний механізм: [nitro](https://github.com/unjs/nitro)
- Набір для розробки: [@nuxt/kit](https://github.com/nuxt/nuxt/tree/main/packages/kit)
- Nuxt 2 Bridge: [@nuxt/bridge](https://github.com/nuxt/bridge)
::

We recommend reading each concept to have a full vision of Nuxt capabilities and the scope of each package.
Ми рекомендуємо прочитати кожну концепцію, щоб мати повне уявлення про можливості Nuxt і можливості кожного пакета.

::card-list
---
Expand All @@ -107,15 +106,15 @@ cardListClass: 'grid grid-cols-1 gap-y-4'
descriptionClass: 'md:mr-[64px] w-[90%]'
---
#title
Are you Nuxt?
Ви Nuxt?
#description
Nuxt is the backbone of your Vue.js project, giving structure to build your project with confidence while keeping flexibility.
Nuxt є основою вашого проекту Vue.js, створюючи структуру для впевненого створення вашого проекту, зберігаючи при цьому гнучкість.
<br>
<br>
Extendable with a strong module ecosystem and hooks engine, it makes it easy to connect your REST or GraphQL endpoints, favorite CMS, CSS frameworks and more. PWA and AMP support is only a module away from your Nuxt project.
Розширюваний потужною екосистемою модулів та механізмом хуків, він дозволяє легко підлючати ваші REST або GraphQL ендпойнти, улюблени CMS, CSS фреймворки тощо. Підтримка PWA та AMP - лише один з модулів для вашого Nuxt проєкту.
<br>
<br>
Ready to try? Head over to the [Installation section](/docs/getting-started/installation).
Готові спробувати? Перейдіть до [розділу з встановлення](/docs/getting-started/installation).
:::

:::card-item
Expand All @@ -130,10 +129,10 @@ cardListClass: 'grid grid-cols-1 gap-y-4'
descriptionClass: 'md:mr-[64px]'
---
#title
Contribute
Взяти участь
#description
Do you want to get involved in the evolution of Nuxt?
Хочете долучитися до розвитку Nuxt?
<br>
Follow the [contribution guide](/docs/community/contribution).
Слідкуйте за [довідником про допомогу](/docs/community/contribution).
:::
::