diff --git a/frappe/docs/user/en/tutorial/before.md b/frappe/docs/user/en/tutorial/before.md index 4c7c51c114..775c395c38 100644 --- a/frappe/docs/user/en/tutorial/before.md +++ b/frappe/docs/user/en/tutorial/before.md @@ -1,48 +1,52 @@ -# Before You Start +# Avant de commencer -
A list of tools, technologies that will be very helpful for building apps in Frappe.
- -There are a number of good tutorials online and we found [CodeAcademy](http://www.codecademy.com/) to be the most beautiful ones out there here bunch of lessons you can learn from CodeAcademy +Liste des outils, technologies utiles dans le développement d'applications avec Frappe.
+Il y a un grand nombres de tutoriels en ligne et nous recommandons [CodeAcademy](http://www.codecademy.com/) ou vous +trouverez beaucoup de ressources de qualité. --- #### 1. Python -Server side Frappe is written in Python and its a good idea to [quickly learn Python](http://www.codecademy.com/tracks/python) before you started digging into Frappe. Another good place to learn Python is the [tutorial on docs.python.org](https://docs.python.org/2.7/tutorial/index.html). Note that Frappe uses Python 2.7 +La partie serveur de Frappe est codée en Python et c'est une bonne idée d'[apprendre rapidement Python](http://www.codecademy.com/tracks/python) +avant de commencer à comprendre Frappe. [Le tutoriel sur docs.python.org](https://docs.python.org/2.7/tutorial/index.html) +est aussi une excellente ressource pour apprendre Python. Notez que Frappe utilise Python 2.7. -To write quality server side code, you must include automatic tests. You can learn the [basics of test driven development here](http://code.tutsplus.com/tutorials/beginning-test-driven-development-in-python--net-30137). +Pour produire une application de qualité, vous devez inclure des tests automatiques. Vous pouvez comprendre les bases +du développement par les tests [ici](http://code.tutsplus.com/tutorials/beginning-test-driven-development-in-python--net-30137). --- -#### 2. Databases MariaDB / MySQL +#### 2. MariaDB / MySQL -You need to understand the basics of databases, like how to install, login, create new databases, and basic SQL queries. Here is a [very quick introduction to MySQL](https://www.digitalocean.com/community/tutorials/a-basic-mysql-tutorial) or head to [the MariaDB site for a more detailed understanding](https://mariadb.com/kb/en/mariadb/documentation/getting-started/) +Vous devez comprendre les notions essentielles des bases de données, comment installer, se connecter, créer de nouvelles bases, +et comment faire des requêtes. Voici [une rapide introduction à MySQL](https://www.digitalocean.com/community/tutorials/a-basic-mysql-tutorial) ou dirigez vous vers [le site MariaDB pour des informations plus détaillées](https://mariadb.com/kb/en/mariadb/documentation/getting-started/) --- #### 3. HTML / CSS -If you are building user interfaces, you will need to [learn basic HTML / CSS](http://www.codecademy.com/tracks/web) and the [Boostrap CSS Framework](http://getbootstrap.com) +Pour construire des interfaces utilisateur, vous devez [apprendre les bases HTML / CSS](http://www.codecademy.com/tracks/web) et [connaître le framework CSS Boostrap](http://getbootstrap.com) --- -#### 4. Building UI with Javascript and JQuery +#### 4. Construire des interfaces avec Javascript et JQuery -To customize forms and create new rich user interfaces, it is best to [learn Javacsript](http://www.codecademy.com/tracks/javascript) and the [popular library JQuery](http://www.codecademy.com/tracks/jquery). +Pour customiser les formulaires et créer des interfaces riches, le mieux est [d'apprendre Javascript](http://www.codecademy.com/tracks/javascript) et la [fameuse librairie JQuery](http://www.codecademy.com/tracks/jquery). --- -#### 5. Customizing Prints and Web pages with Jinja Templating +#### 5. Modifier les affichages et les pages web avec le sysème de template Jinja -If you are customizing Print templates, you need to learn the [Jinja Templating language](http://jinja.pocoo.org/). It is an easy way to create dynamic web pages (HTML). +Si vous voulez modifier les affichages, vous devez apprendre le [language de template Jinja](http://jinja.pocoo.org/). C'est un moyen rapide de construire des pages web dynamiques. --- -#### 6. Git and GitHub +#### 6. Git et GitHub -[Learn how to contribute back to an open source project using Git and GitHub](https://guides.github.com/activities/contributing-to-open-source/), two great tools to help you manage your code and share it with others. +[Apprenz à contrinuer à un projet open source en utilisant Git et GitHub](https://guides.github.com/activities/contributing-to-open-source/), deux outils fantastiques pour vous aider à gérer et partager votre code. --- -When you are ready, [try building a sample application on Frappe]({{ docs_base_url }}/user/en/tutorial/app) +Quand vous êtes prêts, [essayez de développer une simple applicationa avec Frappe]({{ docs_base_url }}/user/fr/tutorial/app) diff --git a/frappe/docs/user/en/tutorial/index.md b/frappe/docs/user/en/tutorial/index.md index 56f5817fc5..19cb7bf918 100644 --- a/frappe/docs/user/en/tutorial/index.md +++ b/frappe/docs/user/en/tutorial/index.md @@ -1,33 +1,41 @@ -# Frappe Tutorial +# Tutoriel Frappe -In this guide we will show you how to create an application from scratch using **Frappe**. Using the example of a Library Management System, we will cover: +Dans ce guide nous allins vous montrer comment créer une application de A à Z en utilisant **Frappe**. En utilisant un +exemple de gestion d'une librairie, nous allons aborder les sujets suivants: 1. Installation -1. Making a New App -1. Making Models -1. Creating Users and Records -1. Creating Controllers -1. Creating Web Views -1. Setting Hooks and Tasks +1. Créer une nouvelle application +1. Créer des modèles +1. Créer des utilisateurs et des enregristrements +1. Créer des contrôleurs +1. Créer des vues web +1. Configurer des Hooks et des tâches -## Who is This For? +## A qui s'adresse ce tutoriel ? -This guide is intended for software developers who are familiar with how the web applications are built and served. Frappe Framework is built on Python and uses MariaDB database and for creating web views, HTML/CSS/Javascript is used. So it would be great if you are familiar with all these technologies. At minimum if you have never used Python before, you should take a quick tutorial before your use this Guide. +Ce guide est à destination des développeurs familiers avec la création d'applications web. Le framework Frappe est développé +avec Python, utilise le système de base de données MariaDB et database and HTML/CSS/Javascript pour le rendu des pages. +Il est donc necessaire d'être familier avec ces technologies. Si vous n'avez jamais utilisé Python auparavant, vous devriez +suivre un tutoriel rapide avant de suivre ce guide. -Frappe uses the git version control system on GitHub. It is also important that you are familiar with basic git and have an account on GitHub to manage your applications. +Frappe utilise le système de gestion de version git sur Github. Il est donc imporant que vous connaissiez les basiques de +l'utilisation de git et que vous ayez un compte sur Github pour gérer vos applications. -## Example +## Exemple -For this guide book, we will build a simple **Library Management** application. In this application we will have models: +Dans ce guide, nous allons développer une simple application de **gestion de librairie**. Dans cette applications nous aurons +les modèles suivants: -1. Article (Book or any other item that can be loaned) -1. Library Member -1. Library Transaction (Issue or Return of an article) -1. Library Membership (A period in which a member is allowed to transact) -1. Library Management Setting (Global settings like period of loan) +1. Article (un livre ou tout autre produit qui peut être emprunté) +1. Library Member (membre de la librairie) +1. Library Transaction (prêt ou retour d'un article) +1. Library Membership (Periode pendant laquelle un membre peut emprunter) +1. Library Management Setting (configuration générale) -The user interface (UI) for the librarian will be the **Frappe Desk**, a built-in browser based UI environment where forms are automatically generated from the models and roles and permissions are also applied. +L'interace utilisateur (UI) pour le libraire sera **Frappe Desk**, un système de rendu d'interface où les formulaires sont +automatiquement générés depuis les modèles en appliquant rôles et permissions. -We will also create web views for library where users can browse articles from a website. +Nous allons aussi créer des vues pour la lirairie afin que les utilisateurs puissent parcourir les articles depuis un site +internet. {index} diff --git a/frappe/docs/user/fr/tutorial/app.md b/frappe/docs/user/fr/tutorial/app.md index e338ce8a17..b52d71e97c 100644 --- a/frappe/docs/user/fr/tutorial/app.md +++ b/frappe/docs/user/fr/tutorial/app.md @@ -1,9 +1,13 @@ -# What is an Application +# Qu'est ce qu'une application ? -An Application in Frappe is just a standard Python application. You can structure a Frappe Application the same way you structure a standard Python Application. For deployment, Frappe uses the standard Python Setuptools, so you can easily port and install the application on any machine. +Dans Frappe, une application est juste une application Python standard. Vous pouvez structurer une application Frappe de +la même facon que vous structurez une application Python standard. Pour le déploiement, Frappe utilise Setuptools donc +vous pouvez facilement déployer votre application sur n'importe quelle machine. -Frappe Framework provides a WSGI interface and for development you can use the built-in Werkzeug server. For implementing in production, we recommend using nginx and gunicorn. +Frappe fournit une interface WSGI et pendant vos développements vous pouvez utiliser le serveur Werkzeug embarqué. Pour le +déploiemenent en production, nous recommandons d'utiliser nginx et gunicorn. -Frappe also has a multi-tenant architecture, grounds up. This means that you can run multiple "sites" in your setup, each could be serving a different set of applications and users. The database for each site is separate. +Frappe, c'est aussune une architecture multi-tenant ce qui signifie que vous pouvez lancer plusieurs sites sur une meme +configuration, chaque site utilisant ses propres applications et utilisateurs. La base de données de chaque site est indépendante. -{next} +{suite} diff --git a/frappe/docs/user/fr/tutorial/bench.md b/frappe/docs/user/fr/tutorial/bench.md index e720d9dc98..65a82f29a2 100644 --- a/frappe/docs/user/fr/tutorial/bench.md +++ b/frappe/docs/user/fr/tutorial/bench.md @@ -1,11 +1,13 @@ -# Installing the Frappe Bench +# Installer le bench de Frappe -Easiest way to setup frappe on a Unix Like system is to use frappe-bench. Read the detailed instructions on how to install using Frappe Bench. +La facon la plus rapide d'installer Frappe sur un système Unix est d'utiliser frappe-bench. Lisez les instructions détaillées sur +comment installer et utiliser Frappe Bench. > [https://github.com/frappe/bench](https://github.com/frappe/bench) -With Frappe Bench you will be able to setup and host multiple applications and sites and it will also setup a Python Virtualenv so that you can have an isolated environment to run your applications (and will not have version conflict with other development environments). +Avec Frappe Bench vous pourrez configurer et héberger de multiples applications et sites. Frappe Bench configure aussi un Virtualenv +Python donc vos applications seront isolées les unes des autres (et vous n'aurez pas de conflits avce d'autres environnements de developpement). -The `bench` command line tool will also be installed that will help you in development and management of the installation. +La commande `bench` sera installé et vous aidera aidera dans le développement et la gestion des vos applications. -{next} +{suite} diff --git a/frappe/docs/user/fr/tutorial/new-app.md b/frappe/docs/user/fr/tutorial/new-app.md index cbb60cc3d3..d3ae222f46 100644 --- a/frappe/docs/user/fr/tutorial/new-app.md +++ b/frappe/docs/user/fr/tutorial/new-app.md @@ -1,8 +1,10 @@ -# Make a New App +# Créer une nouvelle application -Once the bench is installed, you will see two main folders, `apps` and `sites`. All the applications will be installed in apps. +Une fois que Bench est installé, vous apercevrez deux répertoires, `apps` and `sites`. Toutes les applications seront +installées dans `apps`. -To make a new application, go to your bench folder and run, `bench new-app {app_name}` and fill in details about the application. This will create a boilerplate application for you. +Pour créer une nouvelle application, allez dans votre répertoire et lancer la commande, `bench new-app {app_name}` et +remplissez les informations à propos de votre application. Cela va créer un template d'application pour vous. $ bench new-app library_management App Title (defaut: Lib Mgt): Library Management @@ -13,9 +15,9 @@ To make a new application, go to your bench folder and run, `bench new-app {app_ App Color (default 'grey'): #589494 App License (default 'MIT'): GNU General Public License -### App Structure +### Structure d'une application -The application will be created in a folder called `library_management` and will have the following structure: +L'application sera créée dans un répertoire appelé `library_management` et aura la structure suivante: . ├── MANIFEST.in @@ -41,14 +43,14 @@ The application will be created in a folder called `library_management` and will ├── requirements.txt └── setup.py -1. `config` folder contains application configuration info -1. `desktop.py` is where desktop icons can be added to the Desk -1. `hooks.py` is where integrations with the environment and other applications is mentioned. -1. `library_management` (inner) is a **module** that is bootstrapped. In Frappe, a **module** is where model and controller files reside. -1. `modules.txt` contains list of **modules** in the app. When you create a new module, it is required that you update it in this file. -1. `patches.txt` is where migration patches are written. They are python module references using the dot notation. -1. `templates` is the folder where web view templates are maintained. Templates for **Login** and other standard pages are bootstrapped in frappe. -1. `generators` are where templates for models are maintained, where each model instance has a separte web route, for example a **Blog Post** where each post has its unique web url. In Frappe, the templating engine used is Jinja2 -1. `pages` is where single route templates are maintained. For example for a "/blog" type of page. +1. `config` configuration de l'applicationfolder contains application configuration info +1. `desktop.py` est l'endroit ou les icones peuvent être ajoutées au bureau +1. `hooks.py` contient les définitions de la facon dont l'intégration avec l'environnement et les autres applications est faite. +1. `library_management` (interne) est un **module** bootstrappé. Dans Frappe, un **module** est l'endroit ou sont les controlleurs et les modeles. +1. `modules.txt` contient la liste des **modules** dans l'application. Quand vous créez un nouveau module, c'est obligatoire de l'ajouter dans ce fichier. +1. `patches.txt` contient les patchs de migration. Ce sont des références Python utilisant la notation par point. +1. `templates` est le repertoire qui contient les templates des vues. Les templates pour **Login** et autres pages par défaut sont déjà contenus dans Frappe. +1. `generators` est l'endroit ou sont stockés les templates des modèles. Chaque instance du modèle a une route web comme par exemple les **articles de blog** ou chaque article a une adresse unique. Dans Frappe, Jinj2 est utilisé pour les templates. +1. `pages` contient les routes uniques pour les templates. Par exemple "/blog" ou "/article" -{next} +{suite}