From b919aa4b740c0daaf64119588148882e7ae45c2f Mon Sep 17 00:00:00 2001 From: Sagar Vora Date: Wed, 21 Jun 2017 18:07:37 +0530 Subject: [PATCH] Organisation, adding more resources and language changes --- frappe/docs/user/en/tutorial/before.md | 52 +++++++++++++++++++------- 1 file changed, 38 insertions(+), 14 deletions(-) diff --git a/frappe/docs/user/en/tutorial/before.md b/frappe/docs/user/en/tutorial/before.md index 4c7c51c114..80f34e01dd 100755 --- a/frappe/docs/user/en/tutorial/before.md +++ b/frappe/docs/user/en/tutorial/before.md @@ -1,48 +1,72 @@ # Before You Start -

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 +

A list of resources to help you get started with building apps using Frappe

--- #### 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 +Frappe uses Python (v2.7) for server-side programming. It is highly recommended to learn Python before you start building apps with Frappe. + +To write quality server-side code, you must also include automated tests. -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). +Resources: + 1. [Codecademy Tutorial for Python](https://www.codecademy.com/learn/python) + 1. [Official Python Tutorial](https://docs.python.org/2.7/tutorial/index.html) + 1. [Basics of Test-driven development](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/) +To create database-driven apps with Frappe, you must understand the basics of database management, like how to install, login, create new databases, and basic SQL queries. + +Resources: + 1. [Codecademy Tutorial for SQL](https://www.codecademy.com/learn/learn-sql) + 1. [A basic MySQL tutorial by DigitalOcean](https://www.digitalocean.com/community/tutorials/a-basic-mysql-tutorial) + 1. [Getting started with MariaDB](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) +If you want to build user interfaces using Frappe, you will need to learn basic HTML / CSS and the Boostrap CSS Framework. + +Resources: + 1. [Codecademy Tutorial for HTML/CSS](https://www.codecademy.com/learn/learn-html-css) + 1. [Getting started with Bootstrap](https://getbootstrap.com/getting-started/) --- -#### 4. Building UI with Javascript and JQuery +#### 4. JavaScript and 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). +To customize forms and create rich user interfaces, you should learn JavaScript and the popular library jQuery. + +Resources: + 1. [Codecademy Tutorial for JavaScript](https://www.codecademy.com/learn/learn-javascript) + 1. [Codecademy Tutorial for jQuery](https://www.codecademy.com/learn/jquery) --- -#### 5. Customizing Prints and Web pages with Jinja Templating +#### 5. Jinja Templating + +If you are customizing Print templates or Web pages, you need to learn the Jinja Templating language. It is an easy way to create dynamic web pages (HTML). -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). +Resources: + 1. [Primer on Jinja Templating](https://realpython.com/blog/python/primer-on-jinja-templating/) + 1. [Official Documentation](http://jinja.pocoo.org/) --- #### 6. Git and 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. +Learn how to contribute back to an open source project using Git and GitHub, two great tools to help you manage your code and share it with others. + +Resources: + 1. [Basic Git Tutorial](https://try.github.io) + 2. [How to contribute to Open Source](https://opensource.guide/how-to-contribute/) --- -When you are ready, [try building a sample application on Frappe]({{ docs_base_url }}/user/en/tutorial/app) +When you are ready, you can try [building a sample application]({{ docs_base_url }}/user/en/tutorial/app) using Frappe.