2016-02-10 20:54:11 -08:00

2.5 KiB

layout, title, description, date, sidebar, comments, sharing, footer
layout title description date sidebar comments sharing footer
page Setup Development Everything to get you started developing for Home Assistant. 2014-12-21 13:32 false false true true

Home Assistant is build from the ground-up to be easily extensible by other developers using components. It uses Python 3 for the backend and Polymer (Webcomponents) for the frontend.

Home Assistant is open-source and MIT licensed. The source can be found here:

{% linkable_title Starting development %}

You will need to setup a development environment if you want to start developing a new feature or component for Home Assistant. Please follow these steps to perform it. Visit the the Home Assistant repository first and click fork in the top right.

$ git clone https://github.com/YOUR_GIT_USERNAME/home-assistant.git
$ cd home-assistant
$ git remote add upstream https://github.com/balloob/home-assistant.git
$ script/setup

We suggest that you setup a virtual environment aka venv before running the setup script.

After following these steps, running hass will invoke your local installation.

{% linkable_title Submitting improvements %}

Improvements to Home Assistant should be submitted one feature at a time using Github pull requests.

  1. From your fork, create a new branch to hold your changes git checkout -b some-feature
  2. Make the changes you want
  3. Test your changes and check for style violations ./script/test
  4. Commit the changes git add . git commit -m "Added some-feature"
  5. Push your commited changes back to your fork on GitHub git push origin HEAD
  6. Follow these steps to create your pull request.

{% linkable_title Further reading %}