Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.

Commit 6606a4a

Browse files
committed
Translate guide/index.md
1 parent 6b4f4fa commit 6606a4a

File tree

1 file changed

+102
-0
lines changed

1 file changed

+102
-0
lines changed

fr/guide/index.md

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
---
2+
title: Introduction
3+
description: "Le 25 octobre 2016, l'équipe derrière zeit.co, annoncait Next.js, un framework pour les applications React rendues côtés serveur. Quelques heures après l'annonce, l'idée de créer un équivalent pour les applications Vue.js était évident: Nuxt.js était né."
4+
---
5+
6+
> Le 25 octobre 2016, l'équipe derrière [zeit.co](https://zeit.co/), annoncait [Next.js](https://zeit.co/blog/next), un framework pour les applications React rendues côtés serveur. Quelques heures après l'annonce, l'idée de créer un équivalent pour les applications [Vue.js](https://vuejs.org) était évident: Nuxt.js était né.
7+
8+
## Qu'est-ce que Nuxt.js ?
9+
10+
Nuxt.js est un framework pour créer des applications Vue.js universelles.
11+
12+
Son champ principal est le **rendu UI** tout en abstrayant la distribution client/server.
13+
14+
Notre but est de créer un framework suffisament flexible afin que vous puissiez l'utiliser comme base dans un projet principal ou en tant que supplément pour votre projet actuel basé sous Node.js.
15+
16+
Nuxt.js prédéfinit toute la configuration nécessaire pour rendre votre développement d'une application Vue.js rendue côté serveur plus agréable.
17+
18+
En outre, nous fournissons également une autre option de déploiement appelée: *nuxt generate*. Elle permet de construire une application Vue.js générée statiquement (**Static Generated**).
19+
Nous croyons que cette option pourrait être la prochaine étape importante dans le développement d'applications Web avec microservices.
20+
21+
En tant que framework, Nuxt.js est doté de nombreuses fonctionnalités pour vous aider dans votre développement entre le côté client et le côté serveur telles que les données asynchrones, les *middlewares*, les *layouts*, etc.
22+
23+
## Comment ça marche
24+
25+
![Vue avec Webpack et Babel](https://i.imgur.com/avEUftE.png)
26+
27+
Nuxt.js comprends les éléments suivants afin de créer une expérience de développement optimale:
28+
- [Vue 2](https://github.com/vuejs/vue)
29+
- [Vue-Router](https://github.com/vuejs/vue-router)
30+
- [Vuex](https://github.com/vuejs/vuex) (inclut uniquement quand l'[option "store"](/guide/vuex-store) est activée)
31+
- [Vue-Meta](https://github.com/declandewet/vue-meta)
32+
33+
Un total de seulement **28kb min+gzip** (31kb avec vuex).
34+
35+
Sous le capot, nous utilisons [Webpack](https://github.com/webpack/webpack) avec [vue-loader](https://github.com/vuejs/vue-loader) et [babel-loader](https://github.com/babel/babel-loader) pour regrouper (*bundle*), *code-split* et minifier votre code.
36+
37+
## Fonctionnalités
38+
39+
- Écris des fichiers Vue (**.vue*)
40+
- *Code splitting* automatique
41+
- Rendu coté serveur (*Server-Side Rendering* / SSR)
42+
- Système de routage puissant à l'aide des données asynchrones (*Asynchronous Data*)
43+
- Sert les fichiers statiques (*Static File Serving*)
44+
- ES6/ES7 Transpilation
45+
- Bundle et minification de vos fichiers JS et CSS
46+
- Management des éléments *Head*
47+
- Hot reloading pendant le développement
48+
- Pré-processeur: SASS, LESS, Stylus, etc
49+
50+
## Schéma
51+
52+
Ce schéma (en anglais) montre ce qui est invoqué par nuxt.js quand le serveur est appelé ou quand l'utilisateur navigue dans l'application à l'aide de `<nuxt-link>`:
53+
54+
![nuxt-schema](/nuxt-schema.png)
55+
56+
## Rendu côté serveur
57+
58+
Vous pouvez utiliser nuxt.js en tant que framework afin de gérer le rendu complet de l'UI de votre projet.
59+
60+
Lors de la commande `nuxt`, il va démarrer un serveur de développement avec *hot-reloading* et *vue-server-renderer* configurés afin de servir atuomatiquement votre application rendue côté serveur.
61+
62+
Jetez un oeil aux [commandes](/guide/commands) pour en savoir plus.
63+
64+
Si vous avez déjà un serveur, vous pouvez greffer nuxt.js en l'utilisant comme middleware. Il n'y a aucune restrictions quand vous utilisez nuxt.js pour développer votre application web universelle; voir le guide [Using Nuxt.js Programmatically](/api/nuxt).
65+
66+
## Génération d'applications statique
67+
68+
La grande innovation de nuxt.js est: `nuxt generate`
69+
70+
Lors de la création de votre application, il générera le code HTML de chacune de vos routes pour le stocker dans un fichier.
71+
72+
Exemple:
73+
74+
```bash
75+
-| pages/
76+
----| about.vue
77+
----| index.vue
78+
```
79+
80+
Va générer:
81+
```
82+
-| dist/
83+
----| about/
84+
------| index.html
85+
----| index.html
86+
```
87+
88+
De cette façon, vous pouvez héberger votre application web sur n'importe quel hébergement statique!
89+
90+
Le meilleur exemple est ce site web. Il est généré et hébergé sur GitHub Pages:
91+
- [Code source](https://github.com/nuxt/nuxtjs.org) (en anglais)
92+
- [Code généré](https://github.com/nuxt/nuxtjs.org/tree/gh-pages) (en anglais)
93+
94+
Nous ne voulons pas devoir générer manuellement l'application à chaque fois que nous mettons à jour la [documentation](https://github.com/nuxt/docs), du coup chaque modification réalisée invoque une fonction AWS Lambda qui:
95+
1. Clone le [répertoire nuxtjs.org](https://github.com/nuxt/nuxtjs.org)
96+
2. Installe les dépendances via `npm install`
97+
3. Lance `nux generate`
98+
4. Déploie le dossier `dist` sur la branche `gh-pages`
99+
100+
Et nous voilà avec une **Serverless Static Generated Web Application** :)
101+
102+
Nous pouvons aller plus loin en imaginant une application d'e-commerce créée avec `nuxt generate` et hébergée sur un CDN, et regénérée à chaque fois qu'un produit est en rupture de stock ou de retour en stock. Mais si l'utilisateur navigue à sur l'application en attendant, il vera les informations à jour grâce aux appels API effectués sur l'API de l'e-commerce. Pas besoin d'avoir plusieurs instances d'un serveur ainsi qu'un cache supplémentaire!

0 commit comments

Comments
 (0)