Skip to content

Commit

Permalink
Re-org cloud section and add top level getting started. Fixes #67 and #…
Browse files Browse the repository at this point in the history
  • Loading branch information
ChrisGammell committed Nov 5, 2021
1 parent 1342879 commit 8fac3d4
Show file tree
Hide file tree
Showing 49 changed files with 83 additions and 67 deletions.
4 changes: 2 additions & 2 deletions docs/services/1-home.md → docs/cloud/1-services/1-home.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
id: overview
title: Services
title: Services Overview
hide_title: true
slug: /Services
slug: /cloud/services
---

## Overview
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: overview
title: Overview
slug: /service/lightdb
title: LightDB Overview
slug: /cloud/service/lightdb
---

## What is LightDB?
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
id: structure-data
title: Structuring Data
title: Structuring LightDB Data
---

All data on LightDB is stored as JSON like objects. You can think of it as a cloud-hosted JSON tree.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
id: read-write-data
title: Read and Write Data
title: Read and Write LightDB Data
---

Devices interact with LightDB using the gateways available on the platform. For now, only CoAP is available.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: simulating-devices
title: Testing LightDB using coap CLI and goliothctl
---

import Prerequisites from '../../partials/prerequisites-platform-setup.md'
import Prerequisites from '/docs/partials/prerequisites-platform-setup.md'

<Prerequisites />

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: overview
title: Overview
slug: /service/logging
title: Logging Overview
slug: /cloud/service/logging
---

## Coming Soon
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: searching-logs
title: Searching Device Logs
---

import Prerequisites from '../../partials/prerequisites-platform-setup.md'
import Prerequisites from '/docs/partials/prerequisites-platform-setup.md'

<Prerequisites />

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: sending-logs
title: Sending Logs
---

import Prerequisites from '../../partials/prerequisites-platform-setup.md'
import Prerequisites from '/docs/partials/prerequisites-platform-setup.md'

<Prerequisites />

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: overview
title: Overview
slug: /services/lightdb-stream
title: LightDB Stream Overview
slug: /cloud/cloud/services/lightdb-stream
hide_title: true
---

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
id: sending-data
title: Sending Data
title: Sending LightDB Stream Data
---

Devices interact with LightDB Stream using the gateways available on the platform. For now, only CoAP is available.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
id: querying-data
title: Querying Data
title: Querying LightDB Stream Data
---

To allow users to query data in a flexible way, we need to define some structures that can be used for building a query so we can shape the data and filter accordingly to that. For doing so, we defined 2 basic primitives: Fields and Filters. Here are the attributes that can be defined on each one of those primitives:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: overview
title: Overview
slug: /service/ota
slug: /cloud/service/ota
---

## Coming Soon
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
---
id: sending-updates
title: Sending Updates
slug: /services/ota
title: Sending OTA Updates
slug: /cloud/services/ota
---

#### Prerequisites

- `goliothctl` CLI installed
- Authenticated with Golioth - see [Authentication](/services/getting-started/authentication)
- Have a project - see [Create a Project](/services/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/services/getting-started/authorize-devices)
- Authenticated with Golioth - see [Authentication](/getting-started/authentication)
- Have a project - see [Create a Project](/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/getting-started/authorize-devices)

Right now we have a really basic feature for doing Over the Air updates (OTA) on a device, where you can send a file directly to the device. A more complete feature is gonna be build in the near future, so stay tuned.

Expand Down
File renamed without changes.
4 changes: 4 additions & 0 deletions docs/cloud/1-services/_category_.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
label: 'Services'
position: 2.5 # float position is supported
collapsible: true # make the category collapsible
collapsed: false # keep the category open by default
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/concepts/3-device_services.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: Device Services

## Overview

This is the Device Services page. The details around individual device services Goioth offers are in the [Platform](/services/) section of the docs.
This is the Device Services page. The details around individual device services Goioth offers are in the [Platform](/cloud/services/) section of the docs.

## Terminology

Expand Down
2 changes: 1 addition & 1 deletion docs/concepts/4-device_sdks.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: Device SDKs

## Overview

This is the Device SDKs page. The details around individual device services Goioth offers are in the [Platform](/services/) section of the docs.
This is the Device SDKs page. The details around individual device services Goioth offers are in the [Platform](/cloud/services/) section of the docs.

## Terminology

Expand Down
6 changes: 3 additions & 3 deletions docs/firmware/2-device-sdk/4-run-sample.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ This sample application demonstrates how to connect with Golioth and publish sim

### Requirements

- Authenticated with Golioth - see [Authentication](/services/getting-started/authentication)
- Have a project - see [Create a Project](/services/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/services/getting-started/authorize-devices)
- Authenticated with Golioth - see [Authentication](/getting-started/authentication)
- Have a project - see [Create a Project](/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/getting-started/authorize-devices)
- Network connectivity

### Building and Running
Expand Down
2 changes: 1 addition & 1 deletion docs/firmware/5-creating-an-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: creating-an-app
title: Creating a new application from scratch
---

While the [Quickstart](/services/getting-started) focuses on running a sample that's located within the Zephyr file-hierarchy,
While the [Quickstart](/getting-started) focuses on running a sample that's located within the Zephyr file-hierarchy,
it's simple enough to create a new application that's separate from Zephyr.


Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
id: overview
title: Platform Overview
slug: /services/getting-started
slug: /getting-started
---

This is the general installation instructions to get started with the Golioth command line tools and to provision your first devices. You will want to do this before you do any of the other guides on this page.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: authentication
title: Authentication
---

import LoginFlow from '../../partials/login-flow.md'
import LoginFlow from '/docs/partials/login-flow.md'

<LoginFlow/>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ title: Create a Project
#### Prerequisites

- `goliothctl` CLI installed
- Authenticated with Golioth - see [Authentication](/services/getting-started/authentication)
- Authenticated with Golioth - see [Authentication](/getting-started/authentication)

To create a project, simply use `goliothctl project create` command with a `--name` parameter.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,29 @@ There are two ways to create a device in Golioth:
For now we will demonstrate creating a device with no credentials. Don't worry about having a real device as we will simulate one with our tools. For now, create the device with this command:

```
goliothctl device create --name "My first device" --hwId "DE:AD:BE:EF"
goliothctl device create --name "My first device"
```

:::note
The hardware ID is something that is unique to identify your device. It can be the serial number, ICCID/IMSI from the celullar network, MAC Address or another way to identify your device. This is an important step, every IoT device need a way to be unique identified. More docs will be added later to help with that proccess.
:::

Then list your projects devices with the command:

```
$ goliothctl device list
id:"<uuid>" name:"My first device" hardwareIds: "DE:AD:BE:EF"
id:"<uuid>" name:"My first device"
```

Now for the device to connect to our platform, we need to setup some credentials for it which we will see in the next step. You can check for more commands to manage devices [here](/reference/command-line-tools/goliothctl/goliothctl_device).

## Optional hardware unique identifier addition

```
goliothctl device create --name "My first device" --hwId "CH:AN:GE:ME"
```

:::note
`"CH:AN:GE:ME"` must be globally unique to your project. You should sure to change it from the above example for each device you add to the project, so why not start by changing it? A MAC address or other value that represents a unique value (serial number, ICCID/IMSI from the celullar network, etc) is the best source of this info.
:::

```
$ goliothctl device list
id:"<uuid>" name:"My first device" hardware_ids: "CH:AN:GE:ME"
```
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: authorize-devices
title: Authorizing Devices
---

We saw on the [Manage Devices](/services/getting-started/manage-devices) we can create the device. To connect to our platform we also need to create a credential for it.
We saw on the [Manage Devices](/getting-started/manage-devices) we can create the device. To connect to our platform we also need to create a credential for it.

Currently we only support PreShared Key based authentication, but we will be adding more methods in the future.

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes
File renamed without changes
2 changes: 1 addition & 1 deletion docs/hardware/3-esp32/2-quickstart/1-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ slug: /hardware/esp32/quickstart
---

:::caution
You must first follow the [Golioth Platform Quickstart](/services/getting-started/) before attempting this guide.
You must first follow the [Golioth Platform Quickstart](/getting-started/) before attempting this guide.
:::

This work-through will demonstrate how to quickly connect an Espressif [ESP32 DevKitC](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html) with [Zephyr](https://www.zephyrproject.org) & [`west`](https://docs.zephyrproject.org/latest/guides/west/index.html). Remember, we first need to install the main tool you need to work with Golioth, `goliothctl` using the Golioth Platform Guide.
Expand Down
2 changes: 1 addition & 1 deletion docs/hardware/4-nrf91/2-quickstart/1-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ slug: /hardware/nrf91/quickstart
---

:::caution
You must first follow the [Golioth Platform Quickstart](/services/getting-started) before attempting this guide.
You must first follow the [Golioth Platform Quickstart](/getting-started) before attempting this guide.
:::

This work-through will demonstrate how to quickly connect an nRF91 based device to Golioth. The following devices are proven to work with Golioth:
Expand Down
2 changes: 1 addition & 1 deletion docs/hardware/5-virtual-device/2-quickstart/1-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ slug: /hardware/virtual-device/quickstart
---

:::caution
You must first follow the [Golioth Platform Quickstart](/services/getting-started) before attempting this guide.
You must first follow the [Golioth Platform Quickstart](/getting-started) before attempting this guide.
:::

This quickstart guide shows you how to build and test your system *without any hardware*. Take THAT, atoms! Software, FTW!
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ import InstallTools from '/docs/partials/install-tools.mdx'

<InstallTools/>

See [Installing Goliothctl](/services/getting-started/installing/binaries) for more detailed instruction of using the CLI.
See [Installing Goliothctl](/getting-started/installing/binaries) for more detailed instruction of using the CLI.
6 changes: 3 additions & 3 deletions docs/landing_page.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@ We chose the [the Zephyr Project™](https://www.zephyrproject.org), as the basi

## Get started today

To get started, check out the [Quickstart Guide](/services/getting-started/). That will get you set up with a Golioth account and help you to provision your first devices. Then you can choose which platform to try out using our [supported hardware](/hardware).
To get started, check out the [Quickstart Guide](/getting-started/). That will get you set up with a Golioth account and help you to provision your first devices. Then you can choose which platform to try out using our [supported hardware](/hardware).

## Navigation

There are 5 major sections on the Golioth Docs page:

* [Getting Started](/getting-started) - Start here! If you are confused at all, please [join our Discord](https://golioth.io/discord) or [let us know directly](mailto:[email protected])
* [Hardware](/hardware) - This section details which device platforms are explicitly supported and how you can get started with them quickly. There is also a catalog of all hardware that works with Golioth and whether or not it has been verified by the Golioth team, the community, the Zephyr community, etc.
* [Services](/services) - This is the "server side" features of our offerings. Your embedded hardware will communicate with Golioth Services to push and pull information to the broader internet. This section details how to control and interact with each service, and also test the service without any hardware involved.
* [Firmware](/firmware) - This is the "device side" features of our offerings, including device Software Development Kets (SDKs). This section shows how to run the sample firmware that connects to the offerings in the Services section.
* [Cloud](/cloud) - Once your data has transmitted from your device to the Golioth service, this section details how to interact with that data via webapps, mobile apps, and from anywhere else on the web. Make calls to the Golioth web API and display your users' data!
* [Cloud](/cloud) - This is the "server side" features of our offerings. Your embedded hardware will communicate with Golioth Services to push and pull information to the broader internet. This section details how to control and interact with each service, and also test the service without any hardware involved. This section also details how to interact with that data via webapps, mobile apps, and from anywhere else on the web. Make calls to the Golioth web API and display your users' data!
* [Reference](/reference) - All generated API documentation lives here, including for the web side API and the Zephyr API
6 changes: 3 additions & 3 deletions docs/partials/prerequisites-device.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
### Prerequisites

- `goliothctl` and `west` installed
- Authenticated with Golioth - see [Authentication](/services/getting-started/authentication)
- Have a project - see [Create a Project](/services/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/services/getting-started/authorize-devices)
- Authenticated with Golioth - see [Authentication](/getting-started/authentication)
- Have a project - see [Create a Project](/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/getting-started/authorize-devices)
- The `golioth/zephyr` codebase set up on your machine. See the [Set up Zephyr](/hardware/esp32/quickstart/set-up-zephyr) page for the ESP32.
- A toolchain installed. In this guide, the toolchain for the ESP32 will be used.
6 changes: 3 additions & 3 deletions docs/partials/prerequisites-platform-setup.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### Prerequisites

- `goliothctl` and `west` installed
- Authenticated with Golioth - see [Authentication](/services/getting-started/authentication)
- Have a project - see [Create a Project](/services/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/services/getting-started/authorize-devices)
- Authenticated with Golioth - see [Authentication](/getting-started/authentication)
- Have a project - see [Create a Project](/getting-started/create-project)
- Have a provisioned device and credential for it - see [Authorizing Devices](/getting-started/authorize-devices)
16 changes: 8 additions & 8 deletions docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ module.exports = {
src: "img/white_logo.svg",
},
items: [
{
to: "getting-started",
activeBasePath: "getting-started",
label: "Getting Started",
position: "left",
},
{
to: "hardware",
activeBasePath: "hardware",
Expand All @@ -32,12 +38,6 @@ module.exports = {
label: "Firmware",
position: "left",
},
{
to: "services",
activeBasePath: "services",
label: "Services",
position: "left",
},
{
to: "cloud",
activeBasePath: "cloud",
Expand Down Expand Up @@ -69,11 +69,11 @@ module.exports = {
items: [
{
label: "Getting Started",
to: "/services/getting-started",
to: "/getting-started",
},
{
label: "Over the Air Updates",
to: "/services/ota",
to: "/cloud/services/ota",
},
],
},
Expand Down
Loading

0 comments on commit 8fac3d4

Please sign in to comment.