-
Personalized Learning: Dapple offers AI-driven modules that adapt to each user's unique learning style, strengths, and challenges. This personalization builds confidence and reduces frustration by allowing users to progress at their own pace in a structured, supportive environment.
-
Four-Section Learning Experience:
- 💬 Section 1: Verbal Communication - Interactive lessons and realistic prompts to teach appropriate responses in common social situations.
- 👀 Section 2: Non-Verbal Cues - Exercises to recognize facial expressions, tone, and body language.
- 🎤 Section 3: Voice Practice - Audio-based activities to improve clarity, tone, and pacing.
- 🧠 Section 4: Progress Evaluation - Combined speaking and text-based tasks to apply learned skills in realistic settings.
-
AI-Powered Assessment: Onboarding assessment analyzed by Gemini AI to build personalized learning paths.
-
Feedback System: Voice and facial emotion recognition to provide deeply personalized feedback.
-
Expert Appointment System: Book sessions with communication experts through an integrated calendar system that automatically generates Google Meet links for both parties.
-
AI Conversation Practice: Practice conversations with AI that simulates different social roles (teacher, friend, colleague) to help users learn appropriate communication styles for various contexts.
- Framework: Flutter
- Architecture: Clean Architecture
- State Management: Flutter Bloc / Provider
- Navigation: Go Router
- API Communication: Dio
- Local Storage: Hive / Shared Preferences
- Authentication: Firebase Auth
- Analytics: Firebase Analytics
- Flutter 3.16.0 or higher
- Dart 3.0.0 or higher
- Android Studio / VS Code with Flutter extensions
- Firebase project (same as backend)
- iOS development setup (for Mac users)
-
Clone the repository:
git clone https://github.com/Harshal5167/Dapple-frontend.git cd Dapple-frontend -
Install dependencies:
flutter pub get
-
Configure environment variables:
cp .env.example .env # Edit .env with your configuration -
Run the app:
flutter run
- Smooth, intuitive onboarding process
- AI-analyzed questionnaire using Gemini
- Personalized learning path generation
- Clearly organized level progression
- Progress tracking and visualization
- Achievement badges and rewards system
-
Verbal Communication Section
- Interactive dialogue scenarios
- Multiple-choice response training
- Context-appropriate communication practice
-
Non-Verbal Cues Section
- Facial expression recognition exercises
- Body language interpretation activities
- Tone of voice analysis
-
Voice Practice Section
- Audio recording and playback interface
- Voice clarity and pacing exercises
- AI-based voice pattern analysis
-
Progress Evaluation Section
- Combined skill assessment
- Real-world scenario simulations
- Detailed performance metrics
- Calendar integration with Google Calendar
- Expert profile browsing and selection
- View available appointment slots in real-time
- Book, reschedule, or cancel appointments
- View upcoming and past appointments
- Automatic Meet link generation and insertion in calendars
- Appointment reminders and notifications
- Session rating and feedback collection
- Expert specialization filtering
- Role-based AI conversations (teacher, friend, colleague, etc.)
- Adaptive difficulty based on user progress
- Real-time feedback on communication style
- Conversation history and improvement tracking
- Multiple conversation scenarios for different social contexts
- Follow the official Dart style guide
- Use named parameters for clarity
- Document public APIs with dartdoc comments
- Use Flutter Bloc for complex state management
- Provider for simpler state requirements
- Keep presentation logic separate from business logic
- Write unit tests for all use cases
- Create widget tests for UI components
- Maintain integration tests for critical user flows
This frontend connects to the Dapple Backend which is built with Go. See the backend repository for API documentation and setup instructions.
