meshtastic/docs/developers/maintaining-documentation/serve-docs-locally.mdx
Sacha Weatherstone 9dc879235f
Hardware pages (#299)
* initial devices.json

* initial hardware components

* testing page at /docs/hardware/supported/template

* WIP Changes

* Home page work & updates

* Fix build

* Fix external link button

* Setup linting

* rename, cleanup & lint

* seperate lint cmd for now

Co-authored-by: Foster Irwin <foster@jfirwin.com>
Co-authored-by: Sacha Weatherstone <sachaw100@hotmail..om>
2022-04-02 00:34:49 +11:00

98 lines
2.4 KiB
Plaintext

---
id: serve-docs-locally
title: Setting up Local Documentation
sidebar_label: Serve Docs Locally
---
:::note
Some things won't display properly like logos or protobufs, this is not cause for concern.
:::
## Prerequisites
In order to set up your local environment, you will need to install:
- [Node & Node package manager (NPM)](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
- [Yarn package manager](https://yarnpkg.com/getting-started/install)
## Getting Started
### Fork the Meshtastic Repository
Log into Github and create a fork of the [meshtastic/Meshtastic](https://github.com/meshtastic/Meshtastic) repository.
### Clone your Meshtastic Repository fork
:::note
Replace `username` with your Github username.
:::
```shell title="Clone username/Meshtastic Repo"
git clone https://github.com/username/Meshtastic.git
```
### Change directory to Local copy
```shell title="Change Directory"
cd ~/Meshtastic
```
### Install Dependencies
```shell title="Install dependencies using Yarn"
yarn install
```
### Run Development Server
```shell title="Run node.js server"
yarn start
```
:::tip
Before submitting a pull request, it's helpful to run the following command to ensure there are no broken links or errors:
```shell title="Build Project"
yarn build
```
:::
## Update Local Repository
### Verify Upstream Remote is Set
```shell title="Check Remote and Upstream Repositories"
git remote -v
```
If it's set, skip to [Align with meshtastic/Meshtastic Master branch](#align-with-meshtasticmeshtastic-master-branch)
#### Update/Set Upstream if it isn't configured properly
If upstream exists, set the url:
```shell title="Update Upstream Repository"
git remote set-url upstream https://github.com/meshtastic/Meshtastic.git
```
If upstream doesn't exist, add the url:
```shell title="Add Upstream Repository"
git remote add upstream https://github.com/meshtastic/Meshtastic.git
```
### Align with meshtastic/Meshtastic Master branch
:::caution
This will delete any unfinished work. Make sure that you've saved and committed any work you wish to push up to your fork.
:::
:::info
The following command assumes the clone of your Meshtastic fork is in the home directory (`~/Meshtastic`). Adjust the path to the correct path on your machine.
:::
```shell title="Rebase local Meshtastic to remote Meshtastic"
cd ~/Meshtastic ; git fetch upstream ; git checkout master ; git rebase upstream/master
```