GitHub Repositories

Server-Side Repositories


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.
GitHub - AstroPlant/astroplant-backend: Linking several systems to create the AstroPlant backend
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.
GitHub - AstroPlant/astroplant-api: An API to interface with the AstroPlant back-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.
GitHub - AstroPlant/astroplant-frontend-web: A web front-end for the AstroPlant API
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.
GitHub - AstroPlant/astroplant-kit

Peripheral Device Library

This repository contains implementations for sensors and actuators often used with AstroPlant.
GitHub - AstroPlant/astroplant-peripheral-device-library

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.
GitHub - AstroPlant/community-platform: Official repository of the AstroPlant community platform.

Landing Page

This repository contains code for our landing page hosted at
GitHub - Meet-Miles/ The landing page of the AstroPlant project

Production Repositories


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.
GitHub - AstroPlant/astroplant-k8s: Deployment scripts for the AstroPlant backend on a Kubernetes cluster

Testing Repositories


For simulating a kit a module is created that can mimic peripherals virtually.
GitHub - AstroPlant/astroplant-simulation: AstroPlant environment simulation


Faulty sensor? You can test each individual sensor with these small scripts.
GitHub - AstroPlant/sensor-test-scripts: For testing various sensors

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.
GitHub - AstroPlant/RaspiWiFi: Headless WiFi configuration for the Raspberry Pi (or most other devices running Linux) by using a temporary WiFi access point and web interface

pi-gen - Image Creation

This is a fork of a tool used to create the Raspbian images meant for distribution.
GitHub - AstroPlant/pi-gen: Tool used to create the Raspbian images

Hardware Repositories


Blueprints of the AstroPlant electronics can be found inside the following repository:
GitHub - AstroPlant/astroplant-hardware: Raw data files for hardware PCB's


For blueprints of the casing's refer to this repository
GitHub - AstroPlant/Casing: All CAD and other designs for the AstroPlant casing / enclosure / top panel.

Sensors & Actuators Repositories

Astroplant Camera Module

This is an elaborate repository for not just making images, but NDVI images.
GitHub - AstroPlant/astroplant-camera-module
This repository, and the features it contains are not fully integrated in the official AstroPlant ecosystem.