meshtastic/docs/development/web/index.mdx

72 lines
1.5 KiB
Plaintext
Raw Normal View History

2021-04-15 03:19:53 -07:00
---
2022-11-04 10:06:45 -07:00
id: web-interface
2023-07-13 09:57:14 -07:00
title: Web Client Development
sidebar_label: Web Client
2022-11-02 14:50:50 -07:00
sidebar_position: 4
2021-04-15 03:19:53 -07:00
---
2023-07-13 09:57:14 -07:00
## Overview
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
The Meshtastic web interface can be hosted or served from a node.
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
The official hosted version can be found at [https://client.meshtastic.org](https://client.meshtastic.org).
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
The version served from a node can be accessed by first [connecting your node to your network](/docs/settings/config/network) and then navigating to http://meshtastic.local (or your_node_ip.local).
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
## Development & Building
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
### Setup the Build Environment
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
[Install PlatformIO](https://platformio.org/platformio-ide)
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Clone the [Meshtastic Web Repo](https://github.com/meshtastic/web) repository
```shell
git clone https://github.com/meshtastic/web.git
cd web
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
### Development
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Install the dependencies.
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
```bash
pnpm i
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Build the project:
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
```bash
pnpm build
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Start the development server:
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
```bash
pnpm dev
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
### Packaging
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Build the project:
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
```bash
pnpm build
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
GZip the output:
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
```bash
pnpm package
```
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
## Releases
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
Releases are automatically generated for every commit as per out [CI](https://github.com/meshtastic/web/blob/master/.github/workflows/main.yml). This performs two actions:
2021-04-15 03:19:53 -07:00
2023-07-13 09:57:14 -07:00
1. Generates a perpetually updated [GitHub release](https://github.com/meshtastic/web/releases/tag/latest) with an accompanying `build.tar` that a automatically get's pulled by the firmware CI at build time.
2. A hosted version is deployed to [client.meshtastic.org](https://client.meshtastic.org).