mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-12-11 19:05:25 -06:00
2.6 KiB
2.6 KiB
layout, title, description, date, sidebar, comments, sharing, footer
| layout | title | description | date | sidebar | comments | sharing | footer |
|---|---|---|---|---|---|---|---|
| page | Developers | Home Assistant developer information. Everything to get you started | 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:
- home-assistant - Python server-backend
- home-assistant-js - javascript-backend powering the client
- home-assistant-polymer - Polymer UI
{% 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 perform theses steps. Visit the the Home Assistant repository and click fork in the top right.
$ git clone https://github.com/your_github_username/home-assistant.git
$ git remote add upstream git@github.com:balloob/home-assistant.git
$ cd home-assistant
$ 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.
- Go to the Home Assistant repository and click fork in the top right.
- Follow steps in the previous section but with your forked repository.
- Create a new branch to hold your changes
git checkout -b some-feature - Make the changes you want
- Check your changes for style violations
./script/lint - Commit the changes
git add .git commit -m "Added some-feature" - Push your commited changes back to your fork on GitHub
git push origin HEAD - Follow these steps to create your pull request.