The Edtech App is a mobile application designed to provide educational content to users. It utilizes Flutter for the frontend development and integrates with Firebase services for authentication and data storage.
The project follows a modular and organized folder structure to enhance maintainability and scalability.
- models: Contains data models representing entities in the application.
- providers: Manages the state of the application using the Provider package.
- screens: Defines UI screens of the application.
- services: Implements business logic and integrates with external services.
- utils: Holds utility functions and constants.
Represents a bookmark entity within the application.
class Bookmark {
// Properties and methods
}
Represents a course entity within the application.
class Course {
// Properties and methods
}
Represents a module entity within a course.
class Module {
// Properties and methods
}
Represents a user entity within the application.
class User {
// Properties and methods
}
Manages user authentication state.
class AuthProvider {
// Properties and methods
}
Manages bookmark-related state.
class BookmarkProvider {
// Properties and methods
}
Manages course-related state.
class CourseProvider {
// Properties and methods
}
- Login Screen: Handles user login.
- Signup Screen: Manages user registration.
- Course Player Screen: Displays course content, modules, and bookmarks.
- Dashboard Courses Screen: Shows enrolled courses on the dashboard.
- Bookmark List Widget: Displays a list of bookmarks.
- Dashboard Screen Course Card: Represents a course card on the dashboard.
- Module List Widget: Renders a list of modules.
- Video Player Widget: Manages video playback.
Handles user authentication using Firebase Auth.
class AuthenticationService {
// Methods for authentication
}
Manages bookmark-related functionality.
class BookmarkService {
// Methods for bookmark operations
}
Handles course-related logic and integrates with Firebase services.
class CourseService {
// Methods for course operations
}
Holds constant values used throughout the application.
class Constants {
// Constant values
}
Defines routes and navigation logic.
class Navigation {
// Route generation and navigation methods
}
- cloud_firestore: ^4.8.2
- firebase_auth: ^4.6.3
- chewie: ^1.7.1
- provider: ^6.1.1
This documentation provides an overview of the Edtech App's structure and key components. For more detailed information, refer to the individual files and their documentation within the project.