AOSSIE-Org / AOSSIE-Org/Agora-Blockchain

Feature : Add dynamic candidate management to election creation form

Abierto
#157 2 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
JavaScript
Estrellas
97
Forks
199
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Issue Description ✍️

# [Feature] Add Real-Time Candidate Management During Election Creation

## 🚀 Feature Request
Enable adding/editing candidates **directly** in the election creation form instead of requiring a separate step.

## 🤔 Current Problems
1. **Multi-step process**: Users must create election → navigate to dashboard → add candidates
2. **Poor UX**: Forces users to remember candidate details between steps
3. **Time-consuming**: Increases setup time by 3-5x

## 🎯 Desired Behavior
- ➕ **Add candidates dynamically** during form filling
- 🗑️ **Remove candidates** with one click (minimum 2 enforced)
- ✏️ **Edit details** in real-time
- ✅ **Instant validation** for:
- Minimum 2 candidates
- No empty fields
- Unique candidate names

## 📋 Requirements
### Core Functionality
- Unlimited candidate additions
- Intuitive "+ Add Candidate" button
- Delete icon per candidate row
- Real-time save state

### Validation Rules
| Validation | Error Message |
|------------|---------------|
| <2 candidates | "Minimum 2 candidates required" |
| Empty fields | "All candidates need name & description" |
| Duplicate names | "Candidate names must be unique" |

### UI/UX
- Mobile-responsive layout
- Smooth animations for add/remove actions
- Clear error states
- Visual candidate counter

## ✅ Acceptance Criteria
- [ ] Users can add candidates during form filling
- [ ] Minimum 2 candidates enforced
- [ ] All validations provide clear feedback
- [ ] Works on mobile devices
- [ ] Animations don't impact performance

**Labels**: `feature`, `ux`, `high-priority`
**Estimated Effort**: Medium (3-5 hours)

### Record

- [x] I have synced all my node versions as mentioned in the project
- [x] I am using the same version of npm as is the project
- [x] My current branch is in sync with the development branch
- [x] I want to work on this issue

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.