---
sidebar_position: 5
title: "Tecnologias Principais"
---

Esta página lista as tecnologias centrais da aplicação e como elas entram no fluxo técnico.

```mermaid
graph LR
    subgraph UI["Interface e Navegação"]
        React --> ReactRouter
        React --> Tailwind
    end
    subgraph PROG["Atividades de Programação"]
        Blockly --> jsinterpreter["js-interpreter"]
        jsinterpreter --> Phaser
    end
    subgraph LET["Atividades de Letramento"]
        HTML["HTML autocontido"] --> iframe
        iframe --> postMessage
        postMessage --> EventBus["Event Bus interno"]
    end
    subgraph BUILD["Build e Empacotamento"]
        Vite --> Rollup
        Docker --> Nginx
    end
```

## Interface e navegação

- React para composição de interface.
- React Router para rotas e navegação.
- TailwindCSS para estilização utilitária.

Referências externas:

- React: https://react.dev/
- React Router: https://reactrouter.com/
- TailwindCSS: https://tailwindcss.com/docs

## Atividades de programação

- Blockly para construção visual de lógica.
- js-interpreter para execução controlada do código.
- Phaser como motor de execução em atividades que exigem canvas e animação.

Referências externas:

- Blockly: https://developers.google.com/blockly
- js-interpreter: https://github.com/NeilFraser/JS-Interpreter
- Phaser: https://docs.phaser.io/

## Atividades de letramento

As atividades de letramento são HTML autocontido e rodam em iframe sandbox.
A comunicação com React acontece por `postMessage`, convertido em eventos internos.

Referências externas:

- postMessage: https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage
- EventTarget: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget

## Build e empacotamento

- Vite para desenvolvimento e build da aplicação.
- Rollup (via Vite) para estratégias de chunk.
- Docker para reprodução local integrada com os demais serviços.

Referências externas:

- Vite: https://vite.dev/
- Rollup manualChunks: https://rollupjs.org/configuration-options/#output-manualchunks
- Docker: https://docs.docker.com/
