From 53b05600ec2a40946ec669acf22390ee524976ce Mon Sep 17 00:00:00 2001
From: knmcguire <kimberly@bitcraze.io>
Date: Tue, 6 Aug 2019 13:24:00 +0200
Subject: [PATCH] [docs] started docs folder

---
 .gitignore                    |   6 +-
 docs/Gemfile                  |   2 +
 docs/_config.yml              |   3 +
 docs/images/bitcraze_logo.png | Bin 0 -> 13857 bytes
 docs/index.md                 |  11 +++
 docs/run_from_source.md       | 169 ++++++++++++++++++++++++++++++++++
 6 files changed, 190 insertions(+), 1 deletion(-)
 create mode 100644 docs/Gemfile
 create mode 100644 docs/_config.yml
 create mode 100644 docs/images/bitcraze_logo.png
 create mode 100644 docs/index.md
 create mode 100644 docs/run_from_source.md

diff --git a/.gitignore b/.gitignore
index 8d8ad39..50562df 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,4 +25,8 @@ msvcp90.dll
 .DS_Store
 
 # vscode
-.vscode/
\ No newline at end of file
+.vscode/
+
+# Jykell githubpages
+docs/_site/*
+docs/Gemfile.lock
diff --git a/docs/Gemfile b/docs/Gemfile
new file mode 100644
index 0000000..37f5eaa
--- /dev/null
+++ b/docs/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'github-pages', group: :jekyll_plugins
diff --git a/docs/_config.yml b/docs/_config.yml
new file mode 100644
index 0000000..0c86245
--- /dev/null
+++ b/docs/_config.yml
@@ -0,0 +1,3 @@
+name: Crazyflie-Client-Python Documentation
+theme: jekyll-theme-minimal
+logo: images/bitcraze_logo.png
diff --git a/docs/images/bitcraze_logo.png b/docs/images/bitcraze_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..e2cfac3ed0559d912038e4eb25b53f7443231ec4
GIT binary patch
literal 13857
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

literal 0
HcmV?d00001

diff --git a/docs/index.md b/docs/index.md
new file mode 100644
index 0000000..1d5f47d
--- /dev/null
+++ b/docs/index.md
@@ -0,0 +1,11 @@
+# Home
+
+The Crazyflie PC client enables flashing and controlling the Crazyflie. It implements the user interface and high-level control (for example gamepad handling). The communication with Crazyflie and the implementation of the CRTP protocol to control the Crazflie is handled by the [cflib project](https://github.com/bitcraze/crazyflie-lib-python).
+
+
+- Introduction
+- Build and run instructions
+  - [Run from source](run_from_source.md)
+- Explanation Functionalities
+- Development Instructions
+
diff --git a/docs/run_from_source.md b/docs/run_from_source.md
new file mode 100644
index 0000000..f19d9c5
--- /dev/null
+++ b/docs/run_from_source.md
@@ -0,0 +1,169 @@
+# Crazyflie PC client [![Build Status](https://api.travis-ci.org/bitcraze/crazyflie-clients-python.svg)](https://travis-ci.org/bitcraze/crazyflie-clients-python) [![Build status](https://ci.appveyor.com/api/projects/status/u2kejdbc9wrexo31?svg=true)](https://ci.appveyor.com/project/bitcraze/crazyflie-clients-python)
+
+
+The Crazyflie PC client enables flashing and controlling the Crazyflie.
+It implements the user interface and high-level control (for example gamepad handling).
+The communication with Crazyflie and the implementation of the CRTP protocol to control the Crazflie is handled by the [cflib](https://github.com/bitcraze/crazyflie-lib-python) project.
+
+For more info see our [wiki](http://wiki.bitcraze.se/ "Bitcraze Wiki").
+
+# Running from source
+
+The Crazyflie client requires [cflib](https://github.com/bitcraze/crazyflie-lib-python).
+If you want to develop with the lib too, follow the cflib readme to install it.
+
+## Windows (7/8/10)
+
+Running from source on Windows is tested using the official python build from [python.org](https://python.org). The client works with python version >= 3.5. The procedure is tested with 32bit python. It should work with 64bit python but since it is not tested it can be broken (if so, do not hesitate to send a fix ;-).
+
+To run the client you should install python, make sure to check the "add to path" checkbox during install. You should also have git installed and in your path. Use git to clone the crazyflie client project.
+
+Open a command line window and move to the crazyflie clients folder (the exact command depends of where the project is cloned):
+```
+cd crazyflie-clients-python
+```
+
+Download the SDL2.dll windows library:
+```
+python tools\build\prep_windows
+```
+
+Install the client in development mode:
+```
+pip install -e .[dev,qt5]
+```
+
+You can now run the clients with the following commands:
+```
+cfclient
+cfheadless
+cfloader
+cfzmq
+```
+
+**NOTE:** To use Crazyradio you will have to [install the drivers](https://wiki.bitcraze.io/misc:usbwindows)
+
+### Working on the client with PyCharm
+
+Pycharm is an IDE for python. Any Python IDE or development environment will work for the Crazyflie client. To work on the Crazyflie firmware with Pycharm, install pycharm community edition and open the Crazyflie client folder in it. Pycharm will automatically detect the python installation.
+
+To run the client, open and run the file ```bin/cfclient```.
+
+You are now able to edit and debug the python code. you can edit the .ui files for the GUI with QtCreator. You can the Qt development kit from the [Qt website](https://www.qt.io/download-open-source/) and open the .ui files in QtCreator.
+
+### Creating Windows installer
+
+When you are able to run from source, you can build the windows executable and installer.
+
+First build the executable
+```
+python setup.py build
+```
+
+Now you can run the client with ```build\exe.win32-3.6\cfclient.exe```.
+
+To generate the installer you need [nsis](http://nsis.sourceforge.net/) installed and in the path. If you
+are a user of [chocolatey](https://chocolatey.org/) you can install it with ```choco install nsis.portable -version 2.50```,
+otherwise you can just download it and install it manually.
+
+To create the installer:
+```
+python win32install\generate_nsis.py
+makensis win32install\cfclient.nsi
+```
+
+## Mac OSX
+
+Unlike for Windows, there is no build for mac yet.
+It should be possible to package the client as a mac app and [help is wanted](https://github.com/bitcraze/crazyflie-clients-python/issues/231).
+In the mean time you can run the client by installing python and pulling the client python package.
+
+### Using the official python distribution
+
+The easiest to get the client running on Mac if you do not already have Homebrew installed is to use the official Python distribution.
+If you are using Homebrew look at the next section.
+If you are using Anaconda/Conda, the procedure should be very similar but you can skip the python installation.
+
+ 1) Download and install python from [python.org](https://python.org)
+ 2) [Download sdl2](https://www.libsdl.org/download-2.0.php) for Mac OSX and copy SDL2.framework into /Lirary/Frameworks
+ 3) Open a console and install the client with ```python3 -m pip install cfclient[qt5] pysdl2```. This will install the latest release.
+
+You can now launch the client with ```python3 -m cfclient.gui```
+
+If you want to develop and modify the client, you can clone this repos, uninstall cfclient with ```python3 -m pip uninstall cfclient``` and install it in development mode by navigating into the repos root folder and installing the client in edit mode: ```python3 -m pip install -e .```.
+
+### Using homebrew
+**IMPORTANT NOTE**: The following will use
+[Homebrew](http://brew.sh/) and its own Python distribution. If
+you have a lot of other 3rd party python stuff already running on your system
+they might or might not be affected by this.
+
+1. Install homebrew
+
+    See [the Homebrew site](https://brew.sh/)
+
+1. Install the brew bottles needed
+    ```
+    brew install python3 sdl sdl2 sdl_image sdl_mixer sdl_ttf libusb portmidi pyqt5
+    ```
+
+1. Install the client
+
+    * If you only want to use the client to fly the Crazyflie and don't care about coding
+    ```
+    pip3 install cfclient
+    ```
+
+    * If you want to develop the client and play with the source code. From the source folder run
+    ```
+    pip3 install -e .
+    ```
+    If you want to develop on cflib as well, install cflib from <https://github.com/bitcraze/crazyflie-lib-python>
+
+1. You now have all the dependencies needed to run the client. The client can now be started from any location by:
+    ```
+    cfclient
+    ```
+
+## Linux
+
+### Launching the GUI application
+
+If you want to develop with the lib, install cflib from https://github.com/bitcraze/crazyflie-lib-python
+
+Cfclient requires Python3, pip and pyqt5 to be installed using the system package manager. For example on Ubuntu/Debian:
+```
+sudo apt-get install python3 python3-pip python3-pyqt5 python3-pyqt5.qtsvg
+```
+
+Install cfclient to run it from source. From the source folder run (to install
+for your user only you can add ```--user``` to the command):
+```
+pip3 install -e .
+```
+To launch the GUI application in the source folder type:
+```python3 bin/cfclient```
+
+To launch the GUI after a systemwide installation, execute ```cfclient```.
+
+### Dependencies
+
+The Crazyflie PC client has the following dependencies:
+
+* Installed from system packages
+  * Python 3.4+
+  * PyQt5
+  * A pyusb backend: libusb 0.X/1.X
+* Installed from PyPI using PIP:
+  * cflib
+  * PyUSB
+  * PyQtGraph
+  * ZMQ
+  * appdirs
+  * PyYAML
+
+### Setting udev permissions
+
+Using Crazyradio on Linux requires that you set udev permissions. See the cflib
+[readme](https://github.com/bitcraze/crazyflie-lib-python#setting-udev-permissions)
+for more information.
-- 
GitLab