Skip to content

Commit bef1f19

Browse files
authored
Merge pull request #9 from arduino/sebromero/render-verification
Add output for verification to rendering process
2 parents 88c6263 + 207531c commit bef1f19

File tree

3 files changed

+122
-48
lines changed

3 files changed

+122
-48
lines changed

Diff for: β€Ž.github/workflows/render-registry.yml

+9-5
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,26 @@
11
name: Render Registry
22
on:
3-
push:
4-
branches:
5-
- main
3+
- pull_request
64
jobs:
75
render:
86
runs-on: ubuntu-latest
97
steps:
10-
- uses: actions/checkout@v2
8+
- uses: actions/checkout@v3
9+
with:
10+
fetch-depth: 0
11+
ref: ${{ github.event.pull_request.head.ref }}
1112
- uses: actions/setup-node@v2
1213
with:
1314
node-version: 14
1415
cache: "npm"
1516
cache-dependency-path: "**/package-lock.json"
17+
- name: Install dependencies
18+
run: cd registry-renderer; npm i
1619
- name: Render list
17-
run: cd registry-renderer; npm i; node index.js
20+
run: node ./registry-renderer/index.js
1821
- name: Commit list
1922
run: |
23+
git --no-pager branch
2024
git config --global user.name 'Arduino'
2125
git config --global user.email '[email protected]'
2226
git commit -am "Automated rendering of registry" || true

Diff for: β€ŽREADME.md

+96-35
Original file line numberDiff line numberDiff line change
@@ -3,126 +3,187 @@
33
A list of useful MicroPython packages that can be used with the compatible Arduino products.
44

55

6-
## πŸ“š Libraries
6+
## πŸ“¦ Packages
7+
### Arduino IoT Cloud Python client
8+
9+
A Python client for the Arduino IoT cloud, which runs on both CPython and MicroPython.
10+
11+
- 🌐 **URL:** https://github.com/arduino/arduino-iot-cloud-py
12+
- πŸ‘€ **Author:** Arduino
13+
- 🏷️ **Tags:** cloud, iot
14+
- βœ… **Verification:**
15+
- Verified v0.0.7 with `arduino:mbed_portenta:envie_m7` on MicroPython v1.19.1
16+
<hr />
17+
18+
### Micropython Driver for a BME680 breakout
19+
20+
Micropython Driver for a BME680 breakout. The driver uses the I2C interface.
21+
22+
- 🌐 **URL:** https://github.com/robert-hh/BME680-Micropython
23+
- πŸ‘€ **Author:** Robert Hammelrath
24+
- 🏷️ **Tags:** sensor
25+
- βœ… **Verification:**
26+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
27+
<hr />
28+
29+
### MicroPython MY9221
30+
31+
A MicroPython library for 10 segment LED bar graph modules using the MY9221 LED driver.
32+
33+
- 🌐 **URL:** https://github.com/mcauser/micropython-my9221
34+
- πŸ‘€ **Author:** Mike Causer
35+
- 🏷️ **Tags:** LED
36+
- βœ… **Verification:**
37+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
38+
<hr />
39+
740
### MicroPython Rotary Encoder Driver
841

942
MicroPython driver to read a rotary encoder. Works with Pyboard, Raspberry Pi Pico, ESP8266, and ESP32 development boards. This is a robust implementation providing effective debouncing of encoder contacts. It uses two GPIO pins configured to trigger interrupts, ...
1043

11-
🌐 **URL:** https://github.com/miketeachman/micropython-rotary
12-
πŸ‘€ **Author:** miketeachman
13-
🏷️ **Tags:** encoder
44+
- 🌐 **URL:** https://github.com/miketeachman/micropython-rotary
45+
- πŸ‘€ **Author:** miketeachman
46+
- 🏷️ **Tags:** encoder
47+
- βœ… **Verification:**
48+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
49+
<hr />
50+
51+
### Servo PDM Continuous
52+
53+
undefined
54+
55+
- 🌐 **URL:** https://github.com/TTitanUA/micropython_servo_pdm
56+
- πŸ‘€ **Author:** Taras Prokofiev
57+
- 🏷️ **Tags:** servo
58+
- βœ… **Verification:**
59+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
1460
<hr />
1561

1662
### lcd_api and i2c_lcd
1763

1864
Python code for talking to HD44780 compatible character based dot matrix LCDs.
1965

20-
🌐 **URL:** https://github.com/dhylands/python_lcd/
21-
πŸ“œ **License:** MIT license; Copyright (c) 2013 Dave Hylands
22-
🏷️ **Tags:** display, LCD
66+
- 🌐 **URL:** https://github.com/dhylands/python_lcd/
67+
- πŸ“œ **License:** MIT license; Copyright (c) 2013 Dave Hylands
68+
- 🏷️ **Tags:** display, LCD
2369
<hr />
2470

2571
### Picoservo
2672

2773
A simple class for controlling a 9g servo with the Raspberry Pi Pico.
2874

29-
🌐 **URL:** https://github.com/sandbo00/picoservo
30-
🏷️ **Tags:** servo
75+
- 🌐 **URL:** https://github.com/sandbo00/picoservo
76+
- 🏷️ **Tags:** servo
3177
<hr />
3278

3379
### MicroPython driver for DS3231 RTC and AT24C32 EEPROM module.
3480

3581
MicroPython driver for DS3231 RTC and AT24C32 EEPROM module.
3682

37-
🌐 **URL:** https://github.com/pangopi/micropython-DS3231-AT24C32
38-
🏷️ **Tags:** time, RTC
83+
- 🌐 **URL:** https://github.com/pangopi/micropython-DS3231-AT24C32
84+
- 🏷️ **Tags:** time, RTC
3985
<hr />
4086

4187
### AHT10 and AHT20 temperature and humidity sensors
4288

4389
MicroPython driver for the AHT10 and AHT20 temperature and humidity sensors.
4490

45-
🌐 **URL:** https://github.com/targetblank/micropython_ahtx0
46-
🏷️ **Tags:** sensors, temperature, humidity
91+
- 🌐 **URL:** https://github.com/targetblank/micropython_ahtx0
92+
- 🏷️ **Tags:** sensors, temperature, humidity
4793
<hr />
4894

4995
### DFPlayer control using UART 1
5096

5197
Micropython implementation of DFPlayer control over UART
5298

53-
🌐 **URL:** https://github.com/ubidefeo/micropython-dfplayer
54-
🏷️ **Tags:** audio, mp3
99+
- 🌐 **URL:** https://github.com/ubidefeo/micropython-dfplayer
100+
- 🏷️ **Tags:** audio, mp3
101+
- βœ… **Verification:**
102+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
55103
<hr />
56104

57105
### Maxim MAX30102 MicroPython driver
58106

59107
A port of the SparkFun driver for Maxim MAX30102 sensor to MicroPython.
60108

61-
🌐 **URL:** https://github.com/n-elia/MAX30102-MicroPython-driver
62-
🏷️ **Tags:** sensors
109+
- 🌐 **URL:** https://github.com/n-elia/MAX30102-MicroPython-driver
110+
- 🏷️ **Tags:** sensors
63111
<hr />
64112

65113
### MicroPython I2C 16x2 LCD Screen (monochrome and RGB)
66114

67115
This library is designed to support a MicroPython interface for i2c LCD character screens. It is designed around the Pycom implementation of MicroPython
68116

69-
🌐 **URL:** https://github.com/ubidefeo/micropython-i2c-lcd
70-
🏷️ **Tags:** display, LCD, RGB
117+
- 🌐 **URL:** https://github.com/ubidefeo/micropython-i2c-lcd
118+
- 🏷️ **Tags:** display, LCD, RGB
71119
<hr />
72120

73121
### SH1107 based OLED display
74122

75123
Micropython driver for SH1107-based OLED display (64 x 128)
76124

77-
🌐 **URL:** https://github.com/nemart69/sh1107-micropython
78-
🏷️ **Tags:** display, OLED
125+
- 🌐 **URL:** https://github.com/nemart69/sh1107-micropython
126+
- 🏷️ **Tags:** display, OLED
79127
<hr />
80128

81129
### Library for Raspberry Pi Pico
82130

83131
a library for using ws2812b and sk6812 leds (aka neopixels) with Raspberry Pi Pico
84132

85-
🌐 **URL:** https://github.com/blaz-r/pi_pico_neopixel
86-
🏷️ **Tags:** LED
133+
- 🌐 **URL:** https://github.com/blaz-r/pi_pico_neopixel
134+
- 🏷️ **Tags:** LED
87135
<hr />
88136

89137
### MicroPython Thermal Printer
90138

91139
This is the MicroPython port of Python Thermal Printer by Adafruit
92140

93-
🌐 **URL:** https://github.com/ayoy/micropython-thermal-printer
94-
🏷️ **Tags:** printer
141+
- 🌐 **URL:** https://github.com/ayoy/micropython-thermal-printer
142+
- 🏷️ **Tags:** printer
95143
<hr />
96144

97145
### MicroPython TM1637
98146

99147
A MicroPython library for quad 7-segment LED display modules using the TM1637 LED driver. For example, the Grove - 4 Digit Display module http://wiki.seeed.cc/Grove-4-Digit_Display/
100148

101-
🌐 **URL:** https://github.com/mcauser/micropython-tm1637
102-
🏷️ **Tags:** display
149+
- 🌐 **URL:** https://github.com/mcauser/micropython-tm1637
150+
- 🏷️ **Tags:** display
151+
- βœ… **Verification:**
152+
- Verified v1.3.0 with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
153+
<hr />
154+
155+
### MicroPython-Button
156+
157+
An easy to use MicroPython library to handle Buttons and other devices with digital (LOW/HIGH) output.
158+
159+
- 🌐 **URL:** https://github.com/ubidefeo/MicroPython-Button
160+
- πŸ‘€ **Author:** Ubi de Feo
161+
- 🏷️ **Tags:** input, button
162+
- βœ… **Verification:**
163+
- Verified with `arduino:mbed_nano:nanorp2040connect` on MicroPython v1.19.1
103164
<hr />
104165

105166
### MicroPython MAX7219 8x8 LED Matrix
106167

107168
A MicroPython library for the MAX7219 8x8 LED matrix driver, SPI interface, supports cascading and uses framebuf
108169

109-
🌐 **URL:** https://github.com/mcauser/micropython-max7219
110-
πŸ“œ **License:** Licensed under the MIT License.
111-
🏷️ **Tags:** LED, matrix
170+
- 🌐 **URL:** https://github.com/mcauser/micropython-max7219
171+
- πŸ“œ **License:** Licensed under the MIT License.
172+
- 🏷️ **Tags:** LED, matrix
112173
<hr />
113174

114175
### Pressure/temp sensor
115176

116177
Adafruit BME280 Library, a library for the Adafruit BME280 Humidity, Barometric Pressure + Temp sensor.
117178

118-
🌐 **URL:** https://github.com/RuiSantosdotme/ESP-MicroPython
119-
🏷️ **Tags:** pressure, temperature
179+
- 🌐 **URL:** https://github.com/RuiSantosdotme/ESP-MicroPython
180+
- 🏷️ **Tags:** pressure, temperature
120181
<hr />
121182

122183
### Device drivers for IR (infra red) remote controls
123184

124185
Device drivers for IR (infra red) remote controls
125186

126-
🌐 **URL:** https://github.com/peterhinch/micropython_ir
127-
πŸ“œ **License:** This repo provides a driver to receive from IR (infra red) remote controls and a driver for IR "blaster" apps.
128-
🏷️ **Tags:** IR
187+
- 🌐 **URL:** https://github.com/peterhinch/micropython_ir
188+
- πŸ“œ **License:** This repo provides a driver to receive from IR (infra red) remote controls and a driver for IR "blaster" apps.
189+
- 🏷️ **Tags:** IR

Diff for: β€Žregistry-renderer/index.js

+17-8
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { load } from 'js-yaml';
22
import { readFileSync, writeFileSync } from 'fs';
33

4-
const REGISTRY_FILE_PATH = "../librarylist.yaml";
5-
const REPO_DESCRIPTION_PATH = "../description.md";
6-
const TARGET_PATH = "../README.md";
4+
const REGISTRY_FILE_PATH = "./librarylist.yaml";
5+
const REPO_DESCRIPTION_PATH = "./description.md";
6+
const TARGET_PATH = "./README.md";
77

88
/**
99
* Reads the library list from the YAML file and returns it as a JavaScript object.
@@ -28,21 +28,30 @@ function getMarkdownFromLibraryList(libraryList) {
2828
let entry = `### ${library.name}\n\n${library.description} \n\n`;
2929

3030
if(library.url) {
31-
entry += `🌐 **URL:** ${library.url} \n`;
31+
entry += `- 🌐 **URL:** ${library.url} \n`;
3232
}
3333
if(library.author) {
34-
entry += `πŸ‘€ **Author:** ${library.author} \n`;
34+
entry += `- πŸ‘€ **Author:** ${library.author} \n`;
3535
}
3636
if(library.license) {
37-
entry += `πŸ“œ **License:** ${library.license} \n`;
37+
entry += `- πŸ“œ **License:** ${library.license} \n`;
3838
}
3939
if(library.tags) {
40-
entry += `🏷️ **Tags:** ${library.tags.join(', ')} \n`;
40+
entry += `- 🏷️ **Tags:** ${library.tags.join(', ')} \n`;
41+
}
42+
43+
if(library.verification){
44+
entry += "- βœ… **Verification:**\n";
45+
let verification = library.verification.map(verification => {
46+
const libraryVersion = verification.library_version ? ` v${verification.library_version}` : "";
47+
return ` - Verified${libraryVersion} with \`${verification.fqbn}\` on MicroPython v${verification.micropython_version}`;
48+
}).join("\n");
49+
entry += `${verification}\n`;
4150
}
4251
return entry;
4352

4453
}).join("<hr />\n\n");
45-
return `## πŸ“š Libraries\n${libraryData}`;
54+
return `## πŸ“¦ Packages\n${libraryData}`;
4655
}
4756

4857
/**

0 commit comments

Comments
Β (0)