2014-05-18 23:38:59 +03:00
PlatformIO
2014-05-09 02:38:42 -07:00
==========
2015-03-25 11:34:48 +02:00
.. image :: https://travis-ci.org/platformio/platformio.svg?branch=develop
2015-03-30 21:30:52 +03:00
:target: https://travis-ci.org/platformio/platformio
2015-04-01 16:33:51 +03:00
:alt: Travis.CI Build Status
2015-05-22 16:12:02 +03:00
.. image :: https://ci.appveyor.com/api/projects/status/dku0h2rutfj0ctls/branch/develop?svg=true
2015-04-01 16:33:51 +03:00
:target: https://ci.appveyor.com/project/ivankravets/platformio
2015-04-11 20:00:12 +03:00
:alt: AppVeyor.CI Build Status
2015-05-29 14:42:41 +03:00
.. image :: https://circleci.com/gh/platformio/platformio/tree/develop.svg?style=svg
:target: https://circleci.com/gh/platformio/platformio/tree/develop
2015-05-29 17:44:57 +03:00
:alt: Circle.CI Build Status
2015-09-04 12:57:11 +03:00
.. image :: https://requires.io/github/platformio/platformio/requirements.svg?branch=develop
:target: https://requires.io/github/platformio/platformio/requirements/?branch=develop
:alt: Requirements Status
2015-05-29 14:42:41 +03:00
.. image :: https://img.shields.io/pypi/v/platformio.svg
2014-06-13 21:41:07 +03:00
:target: https://pypi.python.org/pypi/platformio/
:alt: Latest Version
2015-05-29 14:42:41 +03:00
.. image :: https://img.shields.io/pypi/l/platformio.svg
2014-06-13 21:41:07 +03:00
:target: https://pypi.python.org/pypi/platformio/
2015-08-28 17:16:30 +03:00
:alt: License
2015-08-18 16:37:44 +03:00
.. image :: https://img.shields.io/pypi/dm/platformio.svg
:target: https://pypi.python.org/pypi/platformio/
:alt: PyPi Downloads
.. image :: https://img.shields.io/sourceforge/dm/platformio-storage.svg
:target: https://sourceforge.net/projects/platformio-storage/
:alt: Packages Downloads
2015-04-20 16:13:02 +01:00
.. image :: https://badges.gitter.im/Join%20Chat.svg
:alt: Join the chat at https://gitter.im/platformio/platformio
2015-05-05 12:59:13 +01:00
:target: https://gitter.im/platformio/platformio
2016-01-26 21:09:32 +02:00
.. image :: https://img.shields.io/donate/PlatformIO.png?color=yellow
:alt: Donate for PlatformIO.Org
2016-02-17 22:47:55 +02:00
:target: http://platformio.org/#!/donate
2016-01-26 21:09:32 +02:00
2014-06-13 21:41:07 +03:00
2015-08-28 17:16:30 +03:00
`Home & Demo <http://platformio.org> `_ |
2016-02-17 22:47:55 +02:00
`PlatformIO IDE <http://platformio.org/#!/platformio-ide> `_ |
2015-03-25 11:34:48 +02:00
`Project Examples <https://github.com/platformio/platformio/tree/develop/examples> `_ |
2016-02-17 22:47:55 +02:00
`Docs <http://docs.platformio.org> `_ |
2015-10-08 16:59:12 +01:00
`Twitter <https://twitter.com/PlatformIO_Org> `_ |
2015-07-31 14:21:30 +03:00
`Facebook <https://www.facebook.com/platformio> `_ |
2016-02-17 22:47:55 +02:00
`Hackaday <https://hackaday.io/project/7980-platformio> `_ |
`Donate <http://platformio.org/#!/donate> `_ |
`Contact Us <http://platformio.org/#!/contact> `_
2014-08-09 17:49:37 +03:00
2015-03-25 11:34:48 +02:00
.. image :: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-logo.png
2014-12-30 23:22:42 +02:00
:target: http://platformio.org
2014-08-09 17:49:37 +03:00
2015-11-28 17:14:42 +02:00
`PlatformIO <http://platformio.org> `_ is an open source ecosystem for IoT
2015-11-30 18:29:30 +02:00
development. Cross-platform code builder and library manager. Continuous and
IDE integration. Arduino and MBED compatible. Ready for Cloud compiling.
2015-11-28 17:14:42 +02:00
2016-02-17 22:47:55 +02:00
* **PlatformIO IDE** - The next generation integrated development environment for IoT.
C/C++ Intelligent Code Completion and Smart Code Linter for the super-fast coding.
Multi-projects workflow with Multiple Panes. Themes Support with dark and light colors.
Built-in Terminal with PlatformIO CLI tool and support for the powerful Serial Port Monitor.
All advanced instruments without leaving your favourite development environment.
2015-11-28 17:14:42 +02:00
* **Development Platforms** - Embedded and Desktop development platforms with
pre-built toolchains, debuggers, uploaders and frameworks which work under
popular host OS: Mac, Windows, Linux (+ARM)
* **Embedded Boards** - Rapid Embedded Programming, IDE and Continuous
Integration in a few steps with PlatformIO thanks to built-in project
generator for the most popular embedded boards and IDE
* **Library Manager** - Hundreds Popular Libraries are organized into single
Web 2.0 platform: list by categories, keywords, authors, compatible
platforms and frameworks; learn via examples; be up-to-date with the latest
2016-02-17 22:47:55 +02:00
version.
2015-06-29 22:26:37 +03:00
*Atmel AVR & SAM, Espressif, Freescale Kinetis, Nordic nRF51, NXP LPC,
Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed,
libOpenCM3, etc.*
2014-11-07 22:14:44 +02:00
2015-08-28 20:15:40 +03:00
.. image :: https://raw.githubusercontent.com/platformio/platformio/develop/docs/_static/platformio-demo-wiring.gif
:target: http://platformio.org
2016-02-17 22:47:55 +02:00
* `PlatformIO IDE <http://platformio.org/#!/platformio-ide> `_
2014-12-30 23:22:42 +02:00
* `Get Started <http://platformio.org/#!/get-started> `_
* `Web 2.0 Library Search <http://platformio.org/#!/lib> `_
* `Development Platforms <http://platformio.org/#!/platforms> `_
2015-03-18 23:26:53 +02:00
* `Frameworks <http://platformio.org/#!/frameworks> `_
2015-03-25 12:20:15 +02:00
* `Embedded Boards Explorer <http://platformio.org/#!/boards> `_
2014-12-30 23:22:42 +02:00
* `Library Manager <http://docs.platformio.org/en/latest/librarymanager/index.html> `_
* `User Guide <http://docs.platformio.org/en/latest/userguide/index.html> `_
2015-05-22 21:42:49 +03:00
* `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html> `_
2014-12-30 23:22:42 +02:00
* `IDE Integration <http://docs.platformio.org/en/latest/ide.html> `_
2015-03-25 13:42:44 +02:00
* `Articles about us <http://docs.platformio.org/en/latest/articles.html> `_
2015-03-29 23:19:50 +03:00
* `FAQ <http://docs.platformio.org/en/latest/faq.html> `_
2016-01-20 16:36:23 +02:00
* `Release Notes <http://docs.platformio.org/en/latest/history.html> `_
2014-08-09 17:49:37 +03:00
2014-11-15 20:12:27 +02:00
Use whenever. *Run everywhere.*
-------------------------------
*PlatformIO* is written in pure *Python* and **doesn't depend** on any
2015-11-17 13:26:42 -05:00
additional libraries/tools from an operating system. It allows you to use
2014-11-15 20:12:27 +02:00
*PlatformIO* beginning from *PC (Mac, Linux, Win)* and ending with credit-card
2015-03-12 23:32:28 +02:00
sized computers (`Raspberry Pi <http://www.raspberrypi.org> `_ ,
`BeagleBone <http://beagleboard.org> `_ ,
`CubieBoard <http://cubieboard.org> `_ ).
2014-11-15 20:12:27 +02:00
Embedded Development. *Easier Than Ever.*
-----------------------------------------
*PlatformIO* is well suited for embedded development and has pre-configured
2014-12-30 23:22:42 +02:00
settings for most popular `Embedded Boards <http://platformio.org/#!/boards> `_ .
2014-11-15 20:12:27 +02:00
2015-03-25 11:34:48 +02:00
* Colourful `command-line output <https://raw.githubusercontent.com/platformio/platformio/develop/examples/platformio-examples.png> `_
2015-06-27 22:47:44 +03:00
* `IDE Integration <http://docs.platformio.org/en/latest/ide.html> `_ with
2016-01-24 00:44:18 +02:00
*Arduino, Atom, Eclipse, Emacs, Energia, Qt Creator, Sublime Text, Vim, Visual Studio*
2015-11-28 17:14:42 +02:00
* Cloud compiling and `Continuous Integration <http://docs.platformio.org/en/latest/ci/index.html> `_
2015-06-27 22:47:44 +03:00
with *AppVeyor, Circle CI, Drone, Shippable, Travis CI*
* Built-in `Serial Port Monitor <http://docs.platformio.org/en/latest/userguide/cmd_serialports.html#platformio-serialports-monitor> `_ and configurable
`build -flags/-options <http://docs.platformio.org/en/latest/projectconf.html#build-flags> `_
2014-11-15 20:12:27 +02:00
* Automatic **firmware uploading**
2014-12-30 23:22:42 +02:00
* Pre-built tool chains, frameworks for the popular `Hardware Platforms <http://platformio.org/#!/platforms> `_
2014-11-15 20:12:27 +02:00
2015-03-25 12:15:17 +02:00
.. image :: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-embedded-development.png
2014-12-30 23:22:42 +02:00
:target: http://platformio.org
2014-11-15 20:12:27 +02:00
:alt: PlatformIO Embedded Development Process
The Missing Library Manager. *It's here!*
-----------------------------------------
*PlatformIO Library Manager* is the missing library manager for development
platforms which allows you to organize and have up-to-date external libraries.
2014-12-30 23:22:42 +02:00
* Friendly `Command-Line Interface <http://docs.platformio.org/en/latest/librarymanager/index.html> `_
* Modern `Web 2.0 Library Search <http://platformio.org/#!/lib> `_
2015-03-25 12:15:17 +02:00
* Open Source `Library Registry API <https://github.com/platformio/platformio-api> `_
2014-12-30 23:22:42 +02:00
* Library Crawler based on `library.json <http://docs.platformio.org/en/latest/librarymanager/config.html> `_
2014-11-15 20:12:27 +02:00
specification
* Library **dependency management**
* Automatic library updating
2015-03-25 12:15:17 +02:00
.. image :: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-library-manager.png
2014-12-30 23:22:42 +02:00
:target: http://platformio.org
2014-11-15 20:12:27 +02:00
:alt: PlatformIO Library Manager Architecture
2014-06-12 21:18:11 +03:00
2014-11-15 20:12:27 +02:00
Smart Code Builder. *Fast and Reliable.*
----------------------------------------
*PlatformIO Code Builder* is built-on a next-generation software construction
tool named `SCons <http://www.scons.org/> `_ . Think of *SCons* as an improved,
cross-platform substitute for the classic *Make* utility.
2014-06-16 23:25:48 +03:00
2014-11-15 20:12:27 +02:00
* Reliable, automatic *dependency analysis*
* Reliable detection of *build changes*
* Improved support for *parallel builds*
* Ability to share *built files in a cache*
2014-12-30 23:22:42 +02:00
* Lookup for external libraries which are installed via `Library Manager <http://docs.platformio.org/en/latest/librarymanager/index.html> `_
2014-06-12 21:18:11 +03:00
2015-03-25 12:15:17 +02:00
.. image :: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png
2014-12-30 23:22:42 +02:00
:target: http://platformio.org
2014-11-15 20:12:27 +02:00
:alt: PlatformIO Code Builder Architecture
Single source code. *Multiple platforms.*
-----------------------------------------
2015-11-17 13:26:42 -05:00
*PlatformIO* allows the developer to compile the same code with different
development platforms using only *One Command*
2014-12-30 23:22:42 +02:00
`platformio run <http://docs.platformio.org/en/latest/userguide/cmd_run.html> `_ .
2014-11-15 20:12:27 +02:00
This happens due to
2014-12-30 23:22:42 +02:00
`Project Configuration File (platformio.ini) <http://docs.platformio.org/en/latest/projectconf.html> `_
2014-11-15 20:12:27 +02:00
where you can setup different environments with specific options (platform
type, firmware uploading settings, pre-built framework, build flags and many
more).
2014-06-12 21:18:11 +03:00
2015-02-27 23:02:44 +02:00
It has support for the most popular embedded platforms:
2014-06-12 21:18:11 +03:00
2015-03-18 23:26:53 +02:00
* `Atmel AVR <http://platformio.org/#!/platforms/atmelavr> `_
* `Atmel SAM <http://platformio.org/#!/platforms/atmelsam> `_
2015-04-11 20:00:12 +03:00
* `Espressif <http://platformio.org/#!/platforms/espressif> `_
2015-03-18 23:26:53 +02:00
* `Freescale Kinetis <http://platformio.org/#!/platforms/freescalekinetis> `_
* `Nordic nRF51 <http://platformio.org/#!/platforms/nordicnrf51> `_
2015-05-22 12:05:42 +03:00
* `NXP LPC <http://platformio.org/#!/platforms/nxplpc> `_
2015-03-18 23:26:53 +02:00
* `ST STM32 <http://platformio.org/#!/platforms/ststm32> `_
2015-06-03 19:53:00 +03:00
* `Silicon Labs EFM32 <http://platformio.org/#!/platforms/siliconlabsefm32> `_
2015-03-18 23:26:53 +02:00
* `Teensy <http://platformio.org/#!/platforms/teensy> `_
* `TI MSP430 <http://platformio.org/#!/platforms/timsp430> `_
* `TI TIVA C <http://platformio.org/#!/platforms/titiva> `_
Frameworks:
* `Arduino <http://platformio.org/#!/frameworks/arduino> `_
* `CMSIS <http://platformio.org/#!/frameworks/cmsis> `_
* `libOpenCM3 <http://platformio.org/#!/frameworks/libopencm3> `_
* `Energia <http://platformio.org/#!/frameworks/energia> `_
* `SPL <http://platformio.org/#!/frameworks/spl> `_
* `mbed <http://platformio.org/#!/frameworks/mbed> `_
2016-01-24 00:44:18 +02:00
* `WiringPi <http://platformio.org/#!/frameworks/wiringpi> `_
2014-06-12 21:18:11 +03:00
2015-11-28 17:14:42 +02:00
For further details, please refer to `What is PlatformIO? <http://docs.platformio.org/en/latest/faq.html#what-is-platformio> `_
2014-06-12 21:18:11 +03:00
2015-12-31 16:12:35 +02:00
Contributing
------------
1. Fork the repository on GitHub.
2. Make a branch off of `` develop ``
3. Run `` pip install tox ``
4. Go to the root of project where is located `` tox.ini `` and run `` tox -e develop ``
5. Activate current development environment:
* Windows: `` .tox\develop\Scripts\activate ``
* Bash/ZSH: `` source .tox/develop/bin/activate ``
* Fish: `` source .tox/bin/activate.fish ``
6. Make changes to code, documentation, etc.
7. Lint source code `` tox -e lint ``
8. Run the tests `` tox -e py27 ``
9. Commit changes to your forked repository
10. Submit a Pull Request on GitHub.
2014-06-12 21:18:11 +03:00
Licence
-------
2016-01-01 20:51:48 +02:00
Copyright 2014-2016 Ivan Kravets <me@ikravets.com>
2014-06-12 21:18:11 +03:00
2015-11-18 17:16:17 +02:00
The PlatformIO is licensed under the permissive Apache 2.0 licence,
so you can use it in both commercial and personal projects with confidence.