GITHUB Organisation

The aim of this post it is to show you how we have organised our Github page in order to make our repositories simpler and easier to download for users.

Main repositories

Documentation: This repository contains all the pages of the Luos official documentation.

Pyluos: Pyluos is a Python package used to program Luos devices in Python.

Luos: This repository contains all the folders and files for the Luos’s library.

Robus: This repository contains all the folders and files for the Robus’s library.

Examples: It’s contains different projects examples using Luos library.

These five repositories are the most common used by developers and users. Now we will see in details the composition of repositories Luos and Examples to see what we can find in a repository.

Luos Repositories

Structure:

Luos:

├───hal
│   ├───briskV3
│   ├───l0
│   └───orbita
├───Inc
└───src

Description:

This Luos repository is not necessarily the most used by users, but all the examples of projects that users can compile on their computers use this library, which is why it’s useful to see what it contains:

hal: This folder contains all the boards architectures supported by Luos library.

Inc: This is all the header files of Luos library.

src:This is all the source files of Luos library.

PB: Every night, PlatformIO checks if there are changes from the Luos repository and collects the sources.

Examples repositories

Structure:

Examples:

├───.github
│   ├───ISSUE_TEMPLATE
│   └───workflows
├───Apps
│   └───Gate
├───Drivers
│   ├───Button
│   ├───Controlled_motor
│   ├───DC_motor
│   ├───Distance
│   ├───Dxl
│   ├───Gpio_dev
│   ├───Handy
│   ├───Imu
│   ├───Led
│   ├───Led_strip
│   ├───Light_sensor
│   ├───Load
│   ├───Potentiometer
│   ├───Power_switch
│   ├───Servo
│   └───Stepper
└───Projects
    ├───0_electronics_basis
    ├───Button
    ├───Controlled_motor
    ├───Dc_motor
    ├───Distance
    ├───Dxl
    ├───Gate
    ├───Gpio
    ├───Handy
    ├───Imu
    ├───Led
    ├───Led_strip
    ├───Light_sensor
    ├───Load
    ├───Potentiometer
    ├───Power_switch
    ├───Servo
    └───Stepper

Description:

This repository is the most important for users because it’s the one they download if they want to compile some examples projects and be inspired to make there own.

You must know that this repository is made of four folders:

.github: Thanks to this folder, we can build the different PlatformIO projects when we make a pull request and see if there is some build error before merging.

Apps: This folder contains the header files for the gate module, and the future Luos apps.

Drivers: This folder contains all the drivers’ modules (except the gate).

Projects: This is all the PlatformIO projects for every modules. Thanks to that, a user can build and upload the code of any module (in a Luos development board for example) and see how it’s work.

2 Likes