GitHub Repositories
Server-Side Repositories
Back-end
This repository contains several modules that are part of the AstroPlant back-end. Each module has a readme. The modules in this repository are mostly micro-services. A large part of the back-end business logic is not implemented here, but rather in the core API module described below.
This repository contains a docker
subdirectory that allows you to use Docker Compose to spin up the entire back-end, including the core APIs and the front-end described below.
AstroPlant Core Client and Kit APIs
This back-end module is relatively big and lives in its own repository. The repository contains an HTTP-based RESTful API to allow (web) clients to communicate with the back-end, and implements part of the MQTT-based API to allow kits to communicate with the back-end. It contains most of the back-end business logic.
The client API can be useful for developing your own UI or to extract raw data to analyze it the way you want to. For more information as to how, please visit the Core API Documentation section.
Front-end
This repository contains the code for the current front-end. It uses the client API to provide a user interface for creating users, kits, setting configurations, etc., and to visualize data.
Be aware that we are in the midst of integrating the community platform into the AstroPlant GitHub organization. This repo might be deprecated in favour of the community platform. Once this is settled we will update this page.
Client-Side Repositories
AstroPlant Kit
This repository contains the core kit software for running on-premise computers (e.g. a Raspberry Pi) with attached peripheral devices (e.g. various sensors). The AstroPlant kits communicate with the AstroPlant back-end, using MQTT as transport, for configuration, publishing measurements, and remote control.
Note that this repository does not itself contain concrete implementations of peripheral devices.
Peripheral Device Library
This repository contains implementations for sensors and actuators often used with AstroPlant.
Web Repositories
Community Platform
This repository contains both codes for the platform itself and for its API. To learn more about the platform itself, its architecture and the roadmap please visit the community platform documentation page.
Landing Page
This repository contains code for our landing page hosted at astroplant.io.
Production Repositories
astroplant-k8s
The official back-end is hosted on a Kubernetes cluster, and this repositories contain all the official deployments files. If you wish to deploy production-grade custom back-end you may find this source useful.
Testing Repositories
astroplant-simulation
For simulating a kit a module is created that can mimic peripherals virtually.
sensor-test-scripts
Faulty sensor? You can test each individual sensor with these small scripts.
RaspiWifi - Configuration Helper
This repository is a fork of a great implementation from Jasbur. We use this repository to make it easy for users to configure Wifi, AstroPlant credentials. It is used for dedicated AstroPlant images. At its core it is very simple and allows for further extensions such as sensor testing or enterprise wifi connections. Feel free to contribute just as for all repositories.
pi-gen - Image Creation
This is a fork of a tool used to create the raspberrypi.org Raspbian images meant for distribution.
Hardware Repositories
Electronics
Blueprints of the AstroPlant electronics can be found inside the following repository:
Casing
For blueprints of the casing's refer to this repository
Sensors & Actuators Repositories
Astroplant Camera Module
This is an elaborate repository for not just making images, but NDVI images.
This repository, and the features it contains are not fully integrated in the official AstroPlant ecosystem.
Last updated