/** * Copyright (c) 2017-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ const React = require('react'); const CompLibrary = require('../../core/CompLibrary.js'); const MarkdownBlock = CompLibrary.MarkdownBlock; /* Used to read markdown */ const Container = CompLibrary.Container; const GridBlock = CompLibrary.GridBlock; const siteConfig = require(process.cwd() + '/siteConfig.js'); function imgUrl(img) { return siteConfig.baseUrl + 'img/' + img; } function docUrl(doc, language) { return siteConfig.baseUrl + 'docs/' + (language ? language + '/' : '') + doc + ".html"; } function pageUrl(page, language) { return siteConfig.baseUrl + (language ? language + '/' : '') + page; } const PopularTopicsSection = ({ language }) => (

Documentation Structure

Architecture. {' '}Explains various layers that make up Home Assistant.

Frontend. {' '}Explains how to develop the user interface of Home Assistant.

Backend. {' '}Explains how to build new integrations for Home Assistant.

Misc. {' '}External APIs, Internationalization, asyncio, Hass.io add-ons, updating documentation.

Popular topics

Source Code

); class Button extends React.Component { render() { return (
{this.props.children}
); } } Button.defaultProps = { target: '_self', }; const SplashContainer = props => (
{props.children}
); const Logo = props => (
); const ProjectTitle = props => (

Home Assistant Developer documentation

Not a developer? Go to the normal website
); const PromoSection = props => (
{props.children}
); class HomeSplash extends React.Component { render() { let language = this.props.language || ''; return (
{/* */}
); } } const IntroSection = ({ language }) => (