Populate chapters from existing docs
This commit is contained in:
@ -7,9 +7,9 @@
|
|||||||
- [Software](./chapter_3.md)
|
- [Software](./chapter_3.md)
|
||||||
- [Operating System](./chapter_3_1.md)
|
- [Operating System](./chapter_3_1.md)
|
||||||
- [Microservices](./chapter_3_2.md)
|
- [Microservices](./chapter_3_2.md)
|
||||||
- [Configuration](./chapter_3_3.md)
|
- [Interfaces](./chapter_3_3.md)
|
||||||
- [Interfaces](./chapter_3_4.md)
|
- [Physical Interface](./chapter_3_3_1.md)
|
||||||
- [Physical Interface](./chapter_3_4_1.md)
|
- [Web Interface](./chapter_3_3_2.md)
|
||||||
- [Web Interface](./chapter_3_4_2.md)
|
- [Configuration](./chapter_3_4.md)
|
||||||
- [Contributor's Guide](./chapter_4.md)
|
- [Contributor's Guide](./chapter_4.md)
|
||||||
- [Licensing](./chapter_5.md)
|
- [Licensing](./chapter_5.md)
|
||||||
|
@ -1 +1,3 @@
|
|||||||
# Introduction
|
# Introduction
|
||||||
|
|
||||||
|
PeachCloud is a low-power, lightweight hardware device designed to facilitate peer-to-peer communication across social networks. We aim to return (cloud) computing back into our homes and local communities in a way which fosters increased trust in one another and the socio-technical systems we inhabit.
|
||||||
|
@ -1 +1,3 @@
|
|||||||
# Operating System
|
# Operating System
|
||||||
|
|
||||||
|
PeachCloud runs an _unofficial_ [preview image](https://people.debian.org/~gwolf/raspberrypi3/20190628/) of Debian 10 (Buster). Kernel version: 4.19.0-5-arm64.
|
||||||
|
@ -1 +1,16 @@
|
|||||||
# Microservices
|
# Microservices
|
||||||
|
|
||||||
|
PeachCloud is built primarily with a [microservices architecture](https://microservices.io/). Each microservice utilises [JSON-RPC](https://www.jsonrpc.org/specification) - a stateless, light-weight remote procedure call protocol - as a means of exposing functionality and allowing interoperability. This approach produces a collection of services which are highly maintainable and testable, loosely coupled and independently deployable. HTTP and WebSockets are used as transports for the microservices.
|
||||||
|
|
||||||
|
The suite of PeachCloud microservices currently includes:
|
||||||
|
|
||||||
|
- [peach-buttons](https://github.com/peachcloud/peach-buttons)
|
||||||
|
- poll GPIO pins for button presses and emit events via pub-sub
|
||||||
|
- [peach-menu](https://github.com/peachcloud/peach-menu)
|
||||||
|
- monitor and interact with the device via the physical interface
|
||||||
|
- [peach-network](https://github.com/peachcloud/peach-network)
|
||||||
|
- query and configure network interfaces
|
||||||
|
- [peach-oled](https://github.com/peachcloud/peach-oled)
|
||||||
|
- write and draw to the OLED display
|
||||||
|
- [peach-stats](https://github.com/peachcloud/peach-menu)
|
||||||
|
- query system statistics
|
||||||
|
@ -1 +1 @@
|
|||||||
# Configuration
|
# Interfaces
|
||||||
|
1
src/chapter_3_3_1.md
Normal file
1
src/chapter_3_3_1.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
# Physical Interface
|
7
src/chapter_3_3_2.md
Normal file
7
src/chapter_3_3_2.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# Web Interface
|
||||||
|
|
||||||
|
[peach-web](https://github.com/peachcloud/peach-web) provides a web interface for monitoring and interacting with the PeachCloud device. This allows administration of the single-board computer (ie. Raspberry Pi) running PeachCloud, as well as the ssb-server and related plugins.
|
||||||
|
|
||||||
|
**Stack**
|
||||||
|
|
||||||
|
The peach-web stack currently consists of [Rocket](https://rocket.rs/) (Rust web framework), [Tera](https://tera.netlify.com/docs/installation/) (Rust template engine inspired by Jinja2 and the Django template language) and [Tachyons](https://tachyons.io/) (functional CSS library for humans).
|
@ -1 +1,13 @@
|
|||||||
# Interfaces
|
# Configuration
|
||||||
|
|
||||||
|
The microservices and other components comprising the PeachCloud software are configurable via the following environment variables:
|
||||||
|
|
||||||
|
| Microservice | Variable | Description | Default |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| peach-network | `PEACH_NETWORK_SERVER` | HTTP server address and port for JSON-RPC | `127.0.0.1:5110` |
|
||||||
|
| peach-buttons | `PEACH_BUTTONS_SERVER` | WebSocket server address and port for JSON-RPC | `127.0.0.1:5111` |
|
||||||
|
| peach-oled | `PEACH_OLED_SERVER` | HTTP server address and port for JSON-RPC | `127.0.0.1:5112` |
|
||||||
|
| peach-stats | `PEACH_STATS_SERVER` | HTTP server address and port for JSON-RPC | `127.0.0.1:5113` |
|
||||||
|
| peach-web | `ROCKET_ENV` | Web application deployment mode | `prod` |
|
||||||
|
| | `ROCKET_TEMPLATE_DIR` | Tera template directory | `static/templates` |
|
||||||
|
| | `PEACH_WEB_WS` | WebSocket server port | `5115` |
|
||||||
|
@ -1 +1,7 @@
|
|||||||
# Web Interface
|
# Web Interface
|
||||||
|
|
||||||
|
[peach-web](https://github.com/peachcloud/peach-web) provides a web interface for monitoring and interacting with the PeachCloud device. This allows administration of the single-board computer (ie. Raspberry Pi) running PeachCloud, as well as the ssb-server and related plugins.
|
||||||
|
|
||||||
|
**Stack**
|
||||||
|
|
||||||
|
The peach-web stack currently consists of [Rocket](https://rocket.rs/) (Rust web framework), [Tera](https://tera.netlify.com/docs/installation/) (Rust template engine inspired by Jinja2 and the Django template language) and [Tachyons](https://tachyons.io/) (functional CSS library for humans).
|
||||||
|
@ -1 +1,3 @@
|
|||||||
# Licensing
|
# Licensing
|
||||||
|
|
||||||
|
[AGPL-3.0](https://www.gnu.org/licenses/agpl-3.0.en.html)
|
||||||
|
Reference in New Issue
Block a user