Feedback System
Collect structured feedback from members after events with customizable questionnaires. Feedback is mandatory — members cannot join future activities without completing surveys.Feedback Workflow
- Member attends a virtual meeting or activity
- After event, system prompts feedback questionnaire
- Member must complete survey to unlock next activity
- Responses are logged with analytics
MeetingsModule.tsx:lines 512:
Este cuestionario es obligatorio para el miembro tras cada actividad. Sin responder, no puede unirse a futuras reuniones.
Questionnaire Editor
Navigate to Meetings Module → Feedback tab.Question Types
Three question formats available:Rating (⭐)
Star rating scale (1-5 stars).MeetingsModule.tsx:lines 580-587.
Multiple Choice
Radio button selection.MeetingsModule.tsx:lines 588-613.
Free Text
Open-ended text response.MeetingsModule.tsx:lines 614-619.
Question Structure
Fromtypes.ts:lines 654-661:
Creating Questions
Choose Question Type
Click one of the type buttons:
- Escala de valoración (⭐): Star rating
- Opción múltiple: Radio buttons
- Texto libre: Text area
Configure Options (Multiple Choice Only)
For multiple choice questions:
- Edit default option text
- Click + Agregar opción to add more
- Click X to remove unwanted options
Set Active State
Toggle Activa/Inactiva button:
- Activa: Question appears in survey
- Inactiva: Hidden but preserved
MeetingsModule.tsx:lines 476-520.
Question Management
Reordering
Use ↑↓ buttons in question card header to change order.MeetingsModule.tsx:lines 493-499.
Editing
Click anywhere in question card to edit inline:- Text: Editable input field
- Options: Editable list items (multiple choice only)
- Active Toggle: Click to enable/disable
Deleting
Click X button in card header. Question is removed immediately.Type Colors
Visual distinction by question type: FromMeetingsModule.tsx:lines 501-505:
Feedback Responses
Navigate to Meetings Module → Respuestas tab.Response Structure
Fromtypes.ts:lines 664-676:
Viewing Responses
Responses display in paginated list:- 10 responses per page
- Avatar: First letter of userName
- Rating: Star icons (⭐) with numeric value
- Event: Associated eventId
- Date: Formatted submission date
MeetingsModule.tsx:lines 667-684.
Response Detail Modal
Click any response row to open detail view:MeetingsModule.tsx:lines 696-725.
Average Rating Calculation
{responses.length} respuestas · Valoración promedio: {avgRating} ⭐
From MeetingsModule.tsx:lines 644-647.
Mandatory Feedback Enforcement
Feedback completion is tracked viaParticipationRecord.
From types.ts:lines 693-701:
Blocking Logic
- Member attends event
- System creates
ParticipationRecordwithfeedbackSubmitted: false - When member tries to join next event:
- Check for pending feedback:
feedbackBlocksNext === true - If true, show “Complete pending surveys” message
- Block access until feedback submitted
- Check for pending feedback:
- After feedback submission:
- Update record:
feedbackSubmitted: true - Set
feedbackBlocksNext: false - Grant access to next activity
- Update record:
Analytics Integration
Feedback data appears in Calendar Analytics tab. FromCalendarModule.tsx:lines 503:
- Total evaluation count
- Average overall rating
- Recent feedback list with star ratings
Question Best Practices
Keep Questions Short
Limit to one sentence for clarity. Members complete surveys on mobile.
Mix Question Types
Combine ratings (quantitative) with text (qualitative) for balanced feedback.
Use Positive Language
Frame questions constructively (“What did you enjoy?” vs “What was wrong?”).
Limit Total Questions
Keep surveys to 5-7 questions max to maintain completion rates.
Example Questionnaires
Workshop Feedback
Meditation Session
Troubleshooting
Questions Not Appearing in Survey
- Check question
isActivestatus istrue - Verify questions are saved (click Guardar cambios)
- Refresh member dashboard
- Check question order (inactive questions may be hidden)
Responses Not Recording
- Verify
FeedbackResponseis being created in database - Check
eventIdmatches actual meeting ID - Ensure member is authenticated when submitting
- Review browser console for API errors
Member Can Still Access Events
- Check
ParticipationRecord.feedbackBlocksNextistrue - Verify blocking logic is implemented in event registration flow
- Confirm member has pending feedback in system
- Review member dashboard for “Complete surveys” prompt
Star Ratings Display Wrong
- Ensure answer
valueis numeric (1-5) - Check
overallRatingcalculation logic - Verify star repeat logic:
'⭐'.repeat(Math.round(value)) - Test with decimal ratings (2.7 → 3 stars)
Related Documentation
- Zoom Integration - Meetings that trigger feedback
- Calendar Management - Activity events
- Gamification - Reward participation with feedback