GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - FakeTruth/zigbee2mqtt.io: 📘 Zigbee2mqtt documentation

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

3,790 Commits
3,790 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
docgen
docgen
 
 
docs
docs
 
 
public
public
 
 
supported-devices-component
supported-devices-component
 
 
.editorconfig
.editorconfig
 
 
.gitignore
.gitignore
 
 
.nvmrc
.nvmrc
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
getBase.ts
getBase.ts
 
 
navbar.ts
navbar.ts
 
 
package-lock.json
package-lock.json
 
 
package.json
package.json
 
 
sidebar.ts
sidebar.ts
 
 
vuepress.config.ts
vuepress.config.ts
 
 

Repository files navigation

Zigbee2MQTT.io

Build ⚙ and Deploy 🚀

This repository contains the Zigbee2MQTT documentation.

It is based on VuePress v2.

Architecture

Directory-Structure:

  • docgen: Some scripts to test and generate the Device-Pages.
  • docs: The actual documentation.
  • docs/.vuepress: Some VuePress enhancements like Stylesheets.
  • public: Static assets.
  • supported-devices-component: Vue.js component rendering the devices-overview page.
  • navbar.ts: Configuration for the top navigation.
  • sidebar.ts: Configuration for the sidebars by individual sections (like Guide).
  • vuepress.config.ts: The VuePress config file.

Docgen

The docgen-scripts helps to generate and update the individual device-pages (/docs/devices/*.md). zigbee-herdsman-converters exposes a list with supported devices which is used for generation. It also updates the Devices-List used by the Supported-Devices overview page.

The ## Notes section of each page is written by hand and does not come from zigbee-herdsman-converters. This section gets preserved and can be edited.

Docgen is written in Typescript, so you need a recent version of Node.js and NPM.

# Install dependencies
npm ci

# Run docgen
npm run docgen

Docgen Tests

Docgen includes some scripts to help testing the page.

  • check-device-images: Checks for missing device images
  • check-links: Checks for broken internal links

Attention: check-links iterates over the generated VuePress files, so you have to build the page first!

VuePress

Use Node.js 18 for building VuePress (other versions are not officially supported).

# Switch to node 18 (for nvm or nvm-compatible tool users)
nvm use

# Install dependencies
npm ci

Building

# Run vuepress build
npm run build

The build-artifact gets written to dist directory.

Development

# Run vuepress in dev mode with hot-reloading
npm run dev

The dev-Mode excludes the huge amount device-pages which slows down the build process drastically. If you are interested in the device-pages you could include them by using the npm run dev:devices npm-run script.

Include specific device

When running in dev-Mode, you can also specify a device (but this device only) which you would like to include in the build process. Useful when working on improving notes of just one device.
INCLUDE_DEVICE variable should be supplied with device's filename (see /docs/devices folder), without the .md. extension.

# Run vuepress in dev mode with specific device included
npx cross-env INCLUDE_DEVICE=<DEVICE_FILE_NAME> npm run dev

# Example for TS011F_plug_1
npx cross-env INCLUDE_DEVICE=TS011F_plug_1 npm run dev

Change development port

You can change development server port when the default one (8080) is taken on your system.

# Run vuepress in dev mode on specified port
npx cross-env DEV_PORT=<PORT_NUMBER> npm run dev

# Example for port no 15080
npx cross-env DEV_PORT=15080 npm run dev

Docker

You can also just use a docker-image include Node.js.

$ docker run --rm -v $PWD:/app -u $UID -ti node:18-slim bash
node@87e1438ef553:/$ cd /app
node@87e1438ef553:/app$ npm ci
node@87e1438ef553:/app$ npm run dev

About

📘 Zigbee2mqtt documentation

www.zigbee2mqtt.io

Resources

Readme
License
Activity

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.