PeachCloud Rust workspace for all code which runs on a PeachCloud device.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
glyph bf7f2c8e31 Merge pull request 'Update golgi init functions with keystore selector' (#107) from keystore_selector into main 2 weeks ago
.cargo Move cargo/.config to root of workspace 5 months ago
issue_template tiny wording change to bug issue template 2 months ago
peach-buttons Move cargo/.config to root of workspace 5 months ago
peach-config Fix clippy warning 2 weeks ago
peach-dyndns-updater Fix clippy warmings 5 months ago
peach-jsonrpc-server replace miniserde_support with serde_support 4 months ago
peach-lib incorporate keystore change from golgi 2 weeks ago
peach-menu Move cargo/.config to root of workspace 5 months ago
peach-monitor Move cargo/.config to root of workspace 5 months ago
peach-network update wpactrl dependency api usage 2 weeks ago
peach-oled Move cargo/.config to root of workspace 5 months ago
peach-patterns import pattern library 7 months ago
peach-probe Move cargo/.config to root of workspace 5 months ago
peach-stats add go-sbot enabled / disabled check 4 months ago
peach-web incorporate keystore change from golgi 2 weeks ago
.drone.yml only run ci on pull request and add docs to readme [CI SKIP] 1 month ago
.gitignore Debugging dyndns 5 months ago
Cargo.lock fix probes dependency version 2 weeks ago
Cargo.toml Add changepassword function to peach-config 5 months ago
README.md fix formatting 1 month ago

README.md

PeachCloud 🍑

Better Scuttlebutt cloud infrastructure as a hardware product.

Support us on OpenCollective!

Build Status

Background

Active Repositories

Documentation

  • peach-devdocs - Developer documentation for PeachCloud in the form of a Markdown book

Devops

  • peach-vps - Setup scripts and configuration files for deploying a PeachCloud development server

Image building & device configuration

  • peach-config - Configuration instructions, files and scripts
  • peach-img-builder - Vmdb2 script for building a Debian disc image for Raspberry Pi with PeachCloud pre-installed

Microservices

  • peach-buttons - Emit GPIO events using JSON-RPC pubsub over WS
  • peach-oled - Write and draw to OLED display using JSON-RPC over HTTP
  • peach-menu - A menu for monitoring and interacting with the PeachCloud device
  • peach-network - Query and configure network interfaces using JSON-RPC over HTTP
  • peach-stats - Query system statistics using JSON-RPC over HTTP
  • peach-lib - JSON-RPC client library for the PeachCloud ecosystem
  • peach-monitor - Monitor network data usage and set alert flags based on user-defined thresholds

Diagnostics

  • peach-probe - Probe PeachCloud microservices to evaluate their state and ensure correct API responses

Web interface

  • peach-patterns - Pattern library for the PeachCloud UI design system
  • peach-web - A web interface for monitoring and interacting with the PeachCloud device

Continuous Integration

Drone CI is used to provide continuous integration for this workspace. The configuration file can be found in .drone.yml in the root of this repository. It is currently configured to run cargo fmt, cargo clippy, cargo test and cargo build on every pull request event. The pipeline runs on the AMD64 Debian Buster image from the official Rust Docker image repository.

The status of the current and previous CI builds can be viewed via the Drone CI Build UI (kindly hosted by Co-op Cloud).

Adding [CI SKIP] to the end of a commit message results in the CI checks being skipped for the next event. For example:

git commit -m "update readme [CI SKIP]"
git push origin main

Developer Diaries

Accounts