Skip to content

Gui-MB/WireWorld

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

⚡ WireWorld – Autômato Celular em JavaScript

License: MIT GitHub top language GitHub repo size Status

WireWorld é uma implementação interativa em JavaScript do famoso autômato celular inventado por Brian Silverman em 1987.
Ele permite simular circuitos digitais utilizando regras simples aplicadas em uma grade bidimensional.

Este é um trabalho da Disciplina de Computação Cientifica executado por Dilson Freitas Simões Junior e Guilherme de Medeiros Burkert, ambos da Universidade Federal de Rio Grande (FURG)

🚀 Funcionalidades

  • 🖥️ Interface gráfica em HTML5 + CSS3.
  • 🎮 Controles interativos:
    • Play / Pausar a simulação.
    • Step (avanço manual por geração).
    • Resetar ou Limpar o tabuleiro.
  • 💾 Salvar e carregar circuitos personalizados em arquivo .txt.
  • ⚡ Controle de velocidade (1–60 gerações por segundo).
  • 🔧 Painel lateral com circuitos prontos (presets):
    • Diodo
    • Transistor
    • Porta XOR
    • Gerador de Clock
  • 🖱️ Desenho direto no tabuleiro:
    • Clique esquerdo → Wire
    • Clique direito → Head
    • Clique do meio → Tail

📂 Estrutura do Projeto

wireworld/
├── index.html - # Estrutura principal da aplicação
├── style.css - # Estilos da interface
├── script.js - # Lógica do WireWorld (simulação e interação)
├── run.py - # Lançador em Python (servidor local)
├── LICENSE - # Licença do projeto
└── README.md - # Este arquivo


🎥 Demonstração

ezgif-380d59e2c25bf3


📜 Regras do WireWorld

  1. Vazio → permanece vazio.
  2. Head (cabeça de elétron) → vira uma Tail.
  3. Tail (cauda de elétron) → vira um Wire.
  4. Wire (condutor) → vira uma Head se 1 ou 2 vizinhos forem Heads.

🛠️ Como executar

Opção 1 – Abrindo no navegador

Basta abrir o arquivo index.html no seu navegador favorito.

Opção 2 – Usando o lançador em Python

O projeto já vem com um script (run.py) que cria um servidor local e abre automaticamente no navegador.

python run.py

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors