Giter Site home page Giter Site logo

airborne's Introduction

Airborne

Drone flight management and log analytics web application built using Python/Flask, MySQL, and Bootstrap. Log analysis is done using dronekit-la.

Prerequisites:

MySQL 5.7	
Python 2.7
Flask 0.12
dronekit-la
mavlogdump.py(from Pymavlink tools repo)	
The following Python/Flask extensions:
	Flask-Login
	Flask-Bcrypt
	Flask-SQLAlchemy	
	mysqlclient (might require some manual installation) or mysql-python
	Flask-WTForms
	WTForms-Components
	Flask-Migrate
	Pymavlink
	Flask-GoogleMaps
	virtualenv

Setup:

Install the latest version of Python 2.7 and MySQL. Also install the required connectors for MySQL. On Windows, you can download them here: Python MySQL

On Linux, you can use the following commands:

sudo apt-get update
sudo apt-get install mysql-server
sudo apt-get install python2.7 libmysqlclient-dev python-mysqldb

Clone the github repository.

git clone https://github.com/ClarkAlmazan/airborne

Install virtualenv.

pip install virtualenv

Navigate to the cloned repo.

cd airborne

Open config.py and set your MySQL credentials on constants MYSQL_USERNAME and MYSQL_PASSWORD. Set the address of the database server on MYSQL_ROUTE.

MYSQL_USERNAME = <some special user>
MYSQL_PASSWORD = <some special password>
MYSQL_ROUTE = <@address:port>

Get your own API key from Google Maps from here

Also on config.py, set your api key on constant 'GOOGLEMAPS_KEY'

GOOGLEMAPS_KEY = <your api key>

Run the install script. It will install most of the components required. This requires Bash. Grant permissions if necessary.

chmod +x install.sh
./install.sh

Download a copy of dronekit-la from here. On Windows, place the contents of the zip file inside the tools folder. You'll have something that looks like this:

|
| app
| flask
| ...
| tools
|--- dronekit-la
|---|--- dronekit-la.exe
|---|--- LICENSE
|---|--- README.md
|--- mavlogdump.py

On Linux, install it using the commands below:

wget https://github.com/dronekit/dronekit-la/releases/download/v0.5/dronekit-la_0.5_amd64.deb
sudo dpkg -i dronekit-la_0.5_amd64.deb
sudo apt-get install -f

For production purposes, install Gunicorn (Linux only):

pip install gunicorn

How to Run:

To run the development server(Windows and Linux), use:

flask/Scripts/python run.py #for Windows
flask/bin/python run.py #for Linux

To run the production server (Linux only), use:

chmod +x production-linux.sh #only if necessary
./production-linux.sh

airborne's People

Contributors

clarkalmazan avatar jachermocilla avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.