EduTicTac Robotics v2 — programar robots sense hardware (blocs->MicroPython->simulador oficial). Exploracio.
  • JavaScript 81.7%
  • Python 7.2%
  • CSS 4.4%
  • HTML 4.2%
  • Shell 2.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-04 16:16:23 +02:00
.forgejo/workflows Pas 7: suite de tests (vitest) + CI Forgejo; refactor a blocks.js testable 2026-09-04 12:19:26 +02:00
app Retroalimentacio positiva: banner verd + so d'exit en superar el repte 2026-09-04 16:16:23 +02:00
hardware/esp32 Pas 2: modul edu v0.1 per a ESP32 (escut MAX7219+botons+brunzidor) + doc 2026-09-04 10:29:00 +02:00
scripts Dispositiu virtual ESP32: Pyodide (WASM) autoallotjat + modul edu + placa virtual 2026-09-04 12:42:31 +02:00
spike Exploracio: disseny v2 + spike validat del simulador oficial micro:bit 2026-09-04 00:02:27 +02:00
.gitignore Dispositiu virtual ESP32: Pyodide (WASM) autoallotjat + modul edu + placa virtual 2026-09-04 12:42:31 +02:00
LICENSE Llicencia MIT per al codi (LICENSE + README + doc) 2026-09-04 00:17:33 +02:00
PLA-MILLORA-AULA.md Pla de millora per a l'aula (perfils, missions, progrés, PWA) + enllaços 2026-09-04 15:40:47 +02:00
README.md Pla de millora per a l'aula (perfils, missions, progrés, PWA) + enllaços 2026-09-04 15:40:47 +02:00
ROBOTICS-V2.md Pla de millora per a l'aula (perfils, missions, progrés, PWA) + enllaços 2026-09-04 15:40:47 +02:00
THIRD_PARTY.md Autoallotjar el simulador micro:bit (v0.1.14, MIT); fix listener duplicat; bloc escriu 2026-09-04 09:20:37 +02:00

EduTicTac Robotics

Programa robòtica sense necessitar robots: blocs (Blockly) → MicroPython → dispositiu virtual al navegador. Local-first, anònim, sense IA, llicències netes.

Funciona amb micro:bit (simulador oficial autoallotjat) i amb ESP32 (dispositiu virtual propi amb Pyodide + mòdul edu), i el mateix projecte de blocs es pot portar a una placa real.

Estat

Prototip funcional desplegat a https://robotics.edutictac.es.

  • Editor de blocs multiblaca (micro:bit | ESP32) amb generadors per target.
  • Simulador micro:bit autoallotjat (/simulator/, v0.1.14, MIT).
  • Dispositiu virtual ESP32 (Pyodide autoallotjat, mòdul edu, placa 8×8 + botons + so).
  • Botó "Prova a Wokwi" (servei extern) per al target ESP32.
  • Multilingüe (català, castellà, anglés), persistència, export/import XML, responsive.
  • Suite de tests (Vitest) i CI (Forgejo Actions).
  • ⚠️ Pendents: validació en placa real, PWA/manifest, code-splitting.

Com executar-ho

cd app
npm install
npm run dev      # desenvolupament (http://127.0.0.1:5173)
npm test         # tests del generador
npm run build    # build de producció a app/dist

Abans del primer build, baixar els actius autoallotjats:

./scripts/fetch-simulator.sh   # simulador micro:bit (MIT) → app/public/simulator
./scripts/fetch-pyodide.sh     # Pyodide core (MPL-2.0) → app/public/pyodide

El desplegament actual és una web estàtica (nginx) amb el contingut de app/dist/.

Com funciona

Català Programes una vegada amb blocs i tries la placa on ho vols veure: micro:bit o ESP32. Els blocs són els mateixos (la lògica no canvia); el que canvia és el codi que es genera per a cada placa. El dispositiu virtual és la mateixa experiència sense maquinari; quan vols, exportes el programa a la placa real.

Castellano Programas una vez con bloques y eliges la placa: micro:bit o ESP32. Los bloques son los mismos (la lógica no cambia); cambia el código generado para cada placa. El dispositivo virtual es la misma experiencia sin hardware; cuando quieres, exportas el programa a la placa real.

English You program once with blocks and pick the board: micro:bit or ESP32. The blocks stay the same (the logic does not change); only the generated code changes per board. The virtual device is the same no-hardware experience; whenever you like, export the program to the real board.

Estructura

Ruta Què és
app/ Aplicació Vite + React + Blockly
app/src/blocks.js Blocs neutres + generadors per target (microbit / edu)
app/public/edu-worker.js Worker (module) que executa el codi amb Pyodide
app/src/VirtualBoard.jsx Placa virtual ESP32 (matriu 8×8, botons, llum)
hardware/esp32/edu.py Mòdul edu real per a l'ESP32 + escut
spike/ Proves de validació del simulador oficial micro:bit
ROBOTICS-V2.md Document de disseny, decisions i roadmap
PLA-MILLORA-AULA.md Pla de millora per a l'aula (perfils, missions, progrés, PWA…)
scripts/ Baixadors reproduïbles dels actius autoallotjats

Llicències i tercers

  • Codi nou: MIT (vegeu LICENSE).
  • Documentació: CC BY-SA 4.0 (prevista).
  • Dependències: Blockly (Apache-2.0), simulador oficial micro:bit (MIT), Pyodide (MPL-2.0).
  • Detalls i atribucions dels tercers incrustats: vegeu THIRD_PARTY.md.
  • Wokwi s'usa només com a enllaç extern (propietari), mai embegut.