The directory grew well beyond Wokwi-only contents: it now hosts
lcgamboa's QEMU fork (qemu-lcgamboa), Espressif's esp32-camera, the
ngspice WASM build, fritzing-parts, picowi, an alternative QEMU
(qemu-esp32), the 100_Days_100_IoT_Projects examples repo, and
Wokwi's own avr8js/rp2040js/wokwi-elements/wokwi-features/wokwi-boards.
"wokwi-libs" was misleading — half the contents have nothing to do
with Wokwi. "third-party/" is the standard convention for vendored
external dependencies.
Mechanical changes:
Path rename:
wokwi-libs/ → third-party/
update-wokwi-libs.bat → update-third-party.bat
docs/WOKWI_LIBS.md → docs/THIRD_PARTY.md
Submodule reconfiguration:
.gitmodules — 4 path= and section names updated
.git/modules/wokwi-libs/ → .git/modules/third-party/
each submodule's .git file rewired to ../../.git/modules/third-party/<name>
Reference updates (~80 files): vite.config.ts aliases, Dockerfile
COPY paths, GH Actions workflow steps, build_qemu_*.sh, all
docs/* and test/*/autosearch/* entries that mention the path,
package-lock.json file: dependencies, .gitignore patterns,
sitemap.xml + index.html SEO blurbs, scripts/generate-component-*,
.dockerignore, .idea/vcs.xml. Bulk replaced both `wokwi-libs/`
(path) and bare `wokwi-libs` (textual mentions in docs/comments).
Verified:
- npx tsc -b --noEmit produces no new errors related to these paths
- vite.config.ts aliases now point at ../third-party/avr8js etc.
- All 4 git submodules (avr8js, rp2040js, wokwi-elements,
wokwi-features) are linked under third-party/ with their
worktrees re-populated and config files referencing the new path
- `grep -r wokwi-libs` returns zero hits outside node_modules,
.vite, frontend/dist, third-party/ (upstream submodule contents),
*.pyc caches, and *.dll.pre-camera rollback binaries
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| AQI_ESP | ||
| Auto_Night_Light_using_LDR_ESP32_plus_MicroPython | ||
| Basic_RTC_Clock_Serial_Monitor_Display | ||
| Battery_Monitor_with_Blynk_IoT | ||
| Bidirectional_ESP_NOW_Communication_with_Dual_Sensor_Nodes | ||
| Bluetooth_Based_Wireless_LED_Control_System | ||
| Blynk_Based_IoT_Relay_Control_MicroPython | ||
| Blynk_Controlled_DC_Brushless_Fan | ||
| Clap_Toggle_Switch_using_ESP32_and_Digital_Sound_Sensor_MicroPython | ||
| ClimaPixel_Mini_Weather_Display | ||
| DC_Motor_Speed_Control_Web_Slider | ||
| DHT11_LCD_Display_using_ESP8266_and_MicroPython | ||
| DHT11_Web_Server_using_ESP32_and_MicroPython | ||
| Dimmer_LED_using_Potentiometer_MicroPython | ||
| Dual_IR_Entry_Exit_Detector_with_Telegram_Alerts | ||
| EEPROM_Simulation_using_MicroPython_on_ESP32_Wokwi | ||
| ESP32_BLE_LED_Control | ||
| ESP32_Hotspot_Access_Point_Setup_MicroPython | ||
| ESP32_IR_Sensor_Telegram_Alert_MicroPython | ||
| ESP32_OLED_Smart_UI_Eyes_Animation_Time_and_Weather_MicroPython | ||
| ESP32_Student_Management_System | ||
| ESP8266_DHT11_Live_Graph_MicroPython_plus_Matplotlib | ||
| ESP8266_LED_CONTROL_BY_PUSH_BUTTON_ESP_NOW | ||
| ESP8266_NTP_Digital_Clock_MicroPython | ||
| ESP8266_TM1637_Button_Press_Counter_MicroPython | ||
| ESP8266_Touch_Sensor_LED_Control_MicroPython | ||
| ESP_NOW_HOME_AUTOMATION | ||
| ESP_NOW_HOME_AUTOMATION_WITH_TEMP_MONITORING_WITH_OLED | ||
| ESP_NOW_RFID_Display | ||
| Flask_Server_Based_LED_Control_using_MicroPython | ||
| Interactive_LED_Control_System | ||
| IoT_Atmospheric_Monitoring_System_using_ESP32_wowki_and_Blynk | ||
| IoT_Based_DSM_Smart_Metering | ||
| IoT_Based_Soil_and_Weather_Monitoring_using_ESP8266_and_ThingSpeak | ||
| IoT_Button_Counter_using_ESP8266_and_MicroPython | ||
| IoT_Environment_Monitoring_With_Anomaly_Detection | ||
| IoT_Relay_Control_Web_Server_Raspberry_Pi_Pico_2W | ||
| IoT_Smart_Irrigation_System | ||
| Joystick_Controlled_Servo | ||
| Joystick_Direction_Display_with_OLED | ||
| Led_ON_OFF_By_Input_from_one_ESP8266 | ||
| MQ4_Gas_Leak_Detection_System_using_ESP32_and_MicroPython | ||
| MQ7_CO_Gas_Detection_ESP32 | ||
| MQ_135_Gas_Sensor_with_ESP32_MicroPython | ||
| MicroPython_Based_8_8_LED_Matrix_Animation_Display_using_ESP8266 | ||
| MicroPython_Watch | ||
| NTP_Synchronized_Digital_Clock_using_ESP32_and_MAX7219 | ||
| OTA_Update_Pico2W | ||
| PIR_Motion_Detector_using_Raspberry_Pi_Pico_2W_and_MicroPython | ||
| Password_Lock_System_using_ESP32 | ||
| Pico_2_W_Dht11_Http_Csv_Logger | ||
| Pico_W_Async_LED_Control_MicroPython | ||
| Pico_W_Web_Servo_Controller | ||
| Potentiometer_Visualizer | ||
| Pulse_Monitor | ||
| RFID_Attendance_Logger | ||
| RFID_Basic_Access_Control_System | ||
| RFID_Relay_Control_System | ||
| RGB_Color_Mixer_using_Potentiometers_ESP32_plus_MicroPython | ||
| Rain_Detection_System_using_ESP8266_Analog_Mode | ||
| Raspberry_Pi_Pico_2_W_ThingsBoard_IoT | ||
| Servo_Motor_Control_with_Raspberry_Pi_Pico_2_W_MicroPython | ||
| Single_Digit_Seven_Segment_Display_with_Raspberry_Pi_Pico_MicroPython | ||
| Smart_Cooling_System_using_ESP8266_DHT11_and_Relay | ||
| Smart_Home_Automation_System | ||
| Smart_IR_Object_Detection_System | ||
| Smart_Indoor_Security_System | ||
| Smart_IoT_Gas_Monitoring_System | ||
| Soil_Moisture_Sensor_DryWet_Detection_ESP8266_MicroPython | ||
| Stepper_Motor_Control_using_ESP32_and_A4988_MicroPython | ||
| Temperature_Based_LED_Indicator_MicroPython_ESP32 | ||
| Ultrasonic_LED_Distance_Indicator_ESP32_MicroPython | ||
| Voice_Activated_LED_Control_System | ||
| WebSocket_LED_Control_using_Raspberry_Pi_Pico_W | ||
| Wi_Fi_Controlled_4WD_Robot_Car | ||
| XIAO_ESP32_4_LED_Control_using_CustomTkinter_and_MicroPython | ||
| microclawup_AI_Powered_ESP32_GPIO_Controller_MicroPython | ||
| micropidash_MicroPython_IoT_Dashboard_Library | ||
| README.md | ||
| _emit_examples_data.py | ||
| _generate.py | ||
| _lib.py | ||
| conftest.py | ||
README.md
test_100_days
Generated tests for the 78 projects in third-party/100_Days_100_IoT_Projects/, mapped against Velxio's current emulation capabilities.
- ✅ Velxio can run: 49
- ❌ Cannot run as-is: 29
Each per-project sub-folder contains:
source/— verbatim copy of the project's user codetest_project.py— the test (static analysis + optional live backend handshake)NOT_SUPPORTED.md(only when the project cannot be emulated) — explains exactly which Velxio capability is missing and what would be needed to add it
How to run
# Static analysis only (no backend required) — fast, works offline:
python -m pytest test/test_100_days -v
# Include live backend smoke checks:
cd backend && uvicorn app.main:app --port 8001 # in another terminal
VELXIO_BACKEND_URL=http://localhost:8001 \\
python -m pytest test/test_100_days -v
Re-generate after pulling new projects:
python test/test_100_days/_generate.py
Capability matrix used for classification
| Capability | Velxio support |
|---|---|
| Arduino UNO / Nano / Mega (AVR) | ✅ avr8js |
| Raspberry Pi Pico / Pico W | ✅ rp2040js |
| ESP32 / ESP32-S3 / ESP32-C3 | ✅ Espressif QEMU |
| ATtiny85 | ✅ avr8js |
| ESP8266 | ❌ no QEMU/firmware |
| MicroPython on Pico | ✅ MicroPythonLoader |
| MicroPython on ESP32 family | ✅ Esp32MicroPythonLoader |
| WiFi (TCP/UDP through host) | ✅ slirp NIC |
| ESP-NOW (peer-to-peer 802.11) | ❌ no virtual 802.11 hub |
| BLE GATT | ⚠️ status events only |
| Tkinter / Flask / Matplotlib (host-side) | ❌ host-only |
Project index
Generated by _generate.py — do not edit by hand.