Code Monkey home page Code Monkey logo

editor-wandi's Introduction

Arduino Project Manager

Um gerenciador de projetos Arduino baseado em web. Permite criar, carregar, salvar, compilar e enviar código para placas Arduino.

Índice

Visão Geral

Este projeto é uma aplicação web que facilita o gerenciamento de projetos Arduino. O frontend é desenvolvido com HTML, CSS e JavaScript, usando o Monaco Editor para edição de código. O backend é feito com Flask e interage com o arduino-cli para manipular o código e a placa Arduino.

Instalação

Requisitos

  • Python 3.x
  • Flask
  • arduino-cli

Backend

  1. Configure o arduino-cli e ajuste o caminho no código se necessário.

  2. Inicie o servidor Flask:

    python app.py

Frontend

  1. Adicione o código HTML e CSS no diretório static do Flask.

  2. Certifique-se de que o Monaco Editor é carregado corretamente com a configuração CDN.

Uso

  1. Criar Projeto: Insira o nome do projeto e clique em "Criar Projeto".
  2. Carregar Projeto: Selecione um projeto da lista e clique em "Carregar".
  3. Excluir Projeto: Selecione um projeto da lista e clique em "Excluir".
  4. Editar Código: Use o editor para modificar o código.
  5. Salvar Código: Clique em "Salvar Código" para salvar as alterações.
  6. Compilar Código: Clique em "Compilar Código" para compilar o código.
  7. Enviar Código: Clique em "Enviar Código" para enviar o código para a placa Arduino.

API

Endpoints

  • GET /api/projects: Lista todos os projetos disponíveis.
  • PUT /api/create_project: Cria um novo projeto. Exige project_name no corpo da requisição.
  • POST /api/delete_project: Exclui um projeto existente. Exige project_name no corpo da requisição.
  • GET /api/load_code: Carrega o código de um projeto. Exige project_name como parâmetro de consulta.
  • POST /api/save_code: Salva o código de um projeto. Exige project_name e code no corpo da requisição.
  • POST /api/compile_code: Compila o código de um projeto. Exige project_name no corpo da requisição.
  • POST /api/upload_code: Envia o código para a placa Arduino. Exige project_name no corpo da requisição.

Contribuição

Se desejar contribuir para o projeto:

  1. Fork o repositório.
  2. Crie uma branch para sua feature:
    git checkout -b minha-nova-feature
  3. Faça as mudanças necessárias e commit:
    git commit -am 'Adiciona nova feature'
  4. Envie para o repositório remoto:
    git push origin minha-nova-feature
  5. Abra um Pull Request.

A estrutura de projeto preferida do usuário inclui:

  1. Backend em Python/Flask para manipulação de arquivos e interações com a CLI do Arduino.
  2. Frontend com HTML, CSS e JavaScript, utilizando o Monaco Editor para edição de código e uma área de console para exibição de mensagens e erros.
  3. Funcionalidades principais:
    • Criar, carregar, salvar, compilar e enviar projetos para o Arduino.
    • Atualização dinâmica da lista de projetos e exibição de mensagens no console.

A estrutura é usada para gerenciamento de projetos Arduino com integração com o Monaco Editor.

// Declarações de variáveis e constantes
const int ledPin = 13; // O pino do LED embutido na placa Arduino

void setup() {
  // Configura o pino do LED como saída
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // Acende o LED
  digitalWrite(ledPin, HIGH);
  delay(1000); // Aguarda 1 segundo

  // Apaga o LED
  digitalWrite(ledPin, LOW);
  delay(1000); // Aguarda 1 segundo
}

editor-wandi's People

Contributors

elisiomassaqui avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.