¡Bienvenido al proyecto del sistema de votación basado en blockchain! Este repositorio es parte de la iniciativa de código abierto de Winter of Blockchain 2024, destinado a crear un sistema de votación seguro y transparente que aproveche la tecnología blockchain.
El sistema de votación basado en blockchain está diseñado para proporcionar un método descentralizado a prueba de manipulaciones para realizar elecciones. Al utilizar la tecnología blockchain, este sistema asegura que los votos se registren de manera transparente e inmutable, evitando el fraude y la mejora de la confianza en el proceso de votación.
Descentralización: los votos se registran en un libro mayor distribuido, eliminando la necesidad de una autoridad central.
Transparencia: todos los votos son visibles en la cadena de bloques, asegurando la transparencia.
Seguridad: las características criptográficas de Blockchain aseguran que los votos no se puedan alterar una vez que se registren.
Anonimato: la identidad de los votantes se mantiene confidencial, asegurando la privacidad.
Escalabilidad: el sistema está diseñado para manejar las elecciones a gran escala de manera eficiente.
Backend: solidez (contratos inteligentes)
Plataforma blockchain: Ethereum
Frontend: react.js
Base de datos: IPFS (sistema de archivos interplanetarios)
Desarrollo y pruebas: Foundry
Control de la versión: Git
Antes de comenzar, asegúrese de tener lo siguiente instalado:
Fundición
Git
Clon el repositorio:
git clone https://github.com/ishita-43/Blockchain-Based-Voting-System.git
cd Blockchain-Based-Voting-SystemCompilar los contratos inteligentes:
Más información en ReadMe de Foundry_Contracts:
cd Foundry_Contracts/
forge compileImplementar contratos en blockchain local (yvil):
forge script script/Deploy.s.sol:DeployWithData --fork-url http://localhost:8545 --private-key < PRIVATE_KEY > --broadcastInstalar dependencias en la carpeta frontend:
cd frontend/
npm installEjecute la aplicación:
npm run devAbra la aplicación en su navegador:
Navegue a http: // localhost: 3000 para ver la aplicación.
¡Agradecemos las contribuciones de la comunidad! Para comenzar, siga estos pasos:
Bifurca el repositorio en GitHub. Cree una nueva rama para su característica o corrección de errores.
git checkout -b feature/your-feature-nameComprometer sus cambios con mensajes claros y descriptivos.
git commit -m " Add feature/your-feature-name "Empuja tu rama a Github.
git push origin feature/your-feature-nameCree una solicitud de extracción contra la rama principal de este repositorio. Las pautas de contribución aseguran que su código se adhiera a los estándares de codificación del proyecto. Escriba pruebas para su código y asegúrese de que pasen todas las pruebas. Proporcione descripciones detalladas en sus solicitudes de extracción. Respeta el código de conducta. Problemas Si encuentra algún error o tiene solicitudes de funciones, abra un problema en GitHub. Asegúrese de proporcionar el mayor contexto posible.
Para cualquier pregunta o discusión, no dude en unirse al Invierno de Blockchain 2024 Discord Server o comunicarse con el mantenedor del proyecto:
Ishita- Github (https://github.com/ishita-43) ¡Esperamos sus contribuciones y esperamos que disfrute trabajando en este proyecto! ?