Skip to content

hadryyassine/Blockchain_voting_system_ADEI

Repository files navigation

ENSIAS Engineering Student Association Election System 🗳️

Welcome to the ENSIAS Engineering Student Association Election System repository. This web application is designed to facilitate secure and transparent elections using blockchain technology. 🌐

Application Overview 📜

This election system is built using a combination of technologies, with Spring Boot for the backend, React for the frontend, and Solidity for the blockchain component. It provides a user-friendly interface for conducting elections within the ENSIAS Engineering Student Association while ensuring the integrity and transparency of the election process. 🚀

Backend (Spring Boot) 🧰

The backend of the election system is developed using Spring Boot, a Java-based framework for building robust and scalable applications. It serves as the core of the system, handling requests, managing data, and interfacing with the blockchain. Here's an overview of the backend components:

  • Controllers: These handle incoming requests from the frontend and manage the application's endpoints, including user registration, candidate registration, and vote casting. 📡

  • Services: Business logic is encapsulated within services, ensuring separation of concerns. Services manage user authentication, candidate management, and interaction with the blockchain. 💼

  • Persistence Layer: The application communicates with a database MySQL to store user data, candidate information, and election results securely. 🗂️

Frontend (React) ⚛️

The frontend of the election system is developed using React, a popular JavaScript library for building user interfaces. It provides an intuitive and responsive user interface for voters and administrators. Key components include:

  • User Registration: Users can create accounts, providing their credentials and verifying their identity. 👤

  • Candidate Registration: Candidates can register for the elections, providing information about their candidacy. 📋

  • Voting Interface: Registered users can cast their votes using a user-friendly interface. ✅

  • Election Results: Real-time election results are displayed, offering transparency to all participants. 📊

Blockchain (Solidity) 💡

The blockchain component, developed using Solidity, is the heart of the system's security and transparency. It offers the following features:

  • Smart Contracts: Smart contracts are used to define the rules of the election, including candidate registration, user authentication, and vote casting. 📜

This repository contains the complete source code, documentation, and setup instructions for deploying and running the ENSIAS Engineering Student Association Election System.

For any questions, issues, or contributions, please feel free to get in touch or create a GitHub issue. 🙋‍♂️

We hope this election system will help ensure fair and transparent elections for the Association of Engineering Students at ENSIAS. 🤝

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published