Skip to content

Approvideo Learning Hub - integration solutions library, video collection, learning modules, community infra clinics, Notion, Supabase, Zoom

Notifications You must be signed in to change notification settings

biomassives/approlearninghub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

learning hub provides a comprehensive system that integrates training modules with team collaboration, personality profiling, and fundraising capabilities. Here's an overview of what I've implemented:

Core Components

  1. Training Module System

Built around your existing training_modules and user_training_progress tables Tracks module completion and user progress Awards points for completed modules Supports different difficulty levels

  1. Project Collaboration System

Team Management:

Invite team members with different roles Track team composition and skills Analyze team compatibility based on personality types

Learning Integration:

Assign training modules to projects Track team progress through required learning Personalize learning approaches based on personality profiles

Fundraising Capabilities:

Create fundraising campaigns for projects Track donations and funding progress Generate fundraising reports

  1. Personality and Learning Styles

MBTI personality type integration Learning style preferences (visual, auditory, kinesthetic) Team compatibility analysis Personalized learning recommendations

  1. Integration Capabilities

Meeting scheduling (Zoom integration) Team notifications Progress tracking and reporting

/approlearninghub/ │ ├── package.json # Dependencies including express, supabase, dexie, crypto-js ├── vercel.json # Vercel deployment configuration │ ├── /public/ # Static assets (served by Vercel) │ ├── index.html # Main application entry point │ ├── offline.html # Offline fallback page │ │ │ ├── /css/ # CSS styles │ │ ├── main.css # Main CSS file │ │ ├── tailwind-emulated.css # Emulated Tailwind CSS │ │ └── timeline.css # Timeline visualization styles │ │ │ ├── /js/ # Client-side JavaScript │ │ ├── services/ # Frontend services │ │ │ ├── apiAuthService.js # Authentication service │ │ │ ├── apiService.js # API client │ │ │ ├── storageService.js # Encrypted localStorage/IndexedDB service │ │ │ └── offlineService.js # Offline data synchronization │ │ │ │ │ ├── views/ # View-specific scripts │ │ │ ├── clinics-browse.js # Clinics browser script │ │ │ ├── courses-browse.js # Courses browser script │ │ │ └── events-browse.js # Events browser script │ │ │ │ │ ├── dashboards/ # Dashboard functionality │ │ │ ├── eventManager.js # Event management main controller │ │ │ ├── timelineController.js # Timeline visualization and control │ │ │ ├── mediaManager.js # Media preparation and uploading │ │ │ ├── promotionTools.js # Promotional content and scheduling │ │ │ ├── eventRecap.js # Post-event reporting and analytics │ │ │ └── libraryIntegration.js # Library integration for content │ │ │ │ │ └── utils/ # Utility functions │ │ ├── timelineUtils.js # Timeline helper functions │ │ ├── dexieManager.js # IndexedDB manager with encryption │ │ └── apiUtils.js # API utilities for frontend │ │ │ ├── /images/ # Image assets │ │ ├── logo.png # Site logo │ │ ├── default-clinic.png # Default clinic image │ │ ├── default-course.png # Default course image │ │ ├── default-event.png # Default event image │ │ ├── placeholder.png # Placeholder image │ │ │ │ │ ├── /clinics/ # Clinic images │ │ ├── /courses/ # Course images │ │ └── /events/ # Event images │ │ │ ├── /templates/ # HTML templates │ │ ├── event-stages.js # Timeline stage templates │ │ ├── event-promotion.js # Promotional content templates │ │ └── event-recap.js # Recap report templates │ │ │ ├── /clinics/ # Clinic pages │ │ ├── browse.html # Clinics browser │ │ └── detail.html # Clinic details page │ │ │ ├── /courses/ # Course pages │ │ ├── browse.html # Courses browser │ │ └── detail.html # Course details page │ │ │ ├── /events/ # Event pages │ │ ├── browse.html # Events browser │ │ ├── detail.html # Event details page │ │ └── timeline.html # Event timeline view │ │ │ └── /dashboards/ # Role-based dashboards │ ├── /admin/ # Admin dashboards │ │ ├── events.html # Admin event management │ │ └── event-detail.html # Admin event details │ │ │ ├── /expert/ # Expert dashboards │ │ ├── events.html # Expert event management │ │ └── event-timeline.html # Expert timeline management │ │ │ └── /user/ # Regular user dashboards │ └── my-events.html # User event participation │ ├── /api/ # Serverless API endpoints (Vercel) │ ├── index.js # Main API router (Express app) │ │ │ ├── /routes/ # API route definitions │ │ ├── auth.js # Authentication routes │ │ ├── clinics.js # Clinics routes │ │ ├── courses.js # Courses routes │ │ ├── events.js # Events routes │ │ ├── timelines.js # Timeline routes │ │ ├── media.js # Media assets routes │ │ ├── participants.js # Participants routes │ │ └── feeds.js # Feeds routes │ │ │ ├── /controllers/ # API controllers │ │ ├── authController.js # Authentication controller │ │ ├── clinicsController.js # Clinics controller │ │ ├── coursesController.js # Courses controller │ │ ├── eventsController.js # Events controller │ │ ├── timelinesController.js # Timelines controller │ │ ├── mediaController.js # Media assets controller │ │ └── participantsController.js # Participants controller │ │ │ ├── /models/ # Data models │ │ ├── event.js # Event model │ │ ├── timeline.js # Timeline model │ │ ├── mediaAsset.js # Media assets model │ │ ├── participant.js # Participant model │ │ ├── clinic.js # Clinic model │ │ ├── course.js # Course model │ │ └── user.js # User model │ │ │ ├── /middleware/ # API middleware │ │ ├── auth.js # Authentication middleware │ │ ├── eventAuth.js # Event-specific permissions │ │ ├── mediaValidation.js # Media upload validation │ │ └── errorHandler.js # Error handling middleware │ │ │ ├── /services/ # Business logic services │ │ ├── dbService.js # Database service (Supabase) │ │ ├── storageService.js # File storage service (Supabase) │ │ ├── notificationService.js # Notification service │ │ └── integrationService.js # Third-party integrations │ │ │ └── /utils/ # API utilities │ ├── supabaseClient.js # Supabase client configuration │ ├── errorUtils.js # Error handling utilities │ ├── timelineUtils.js # Timeline helper functions │ ├── mediaProcessing.js # Media processing utilities │ └── cryptoUtils.js # Encryption utilities │ ├── /data/ # Local data for offline fallback │ ├── clinics.json # Sample clinics data │ ├── courses.json # Sample courses data │ ├── events.json # Sample events data │ └── users.json # Sample users data │ ├── /config/ # Configuration files │ ├── eventStages.js # Event timeline stage definitions │ ├── permissions.js # Role-based permissions │ ├── integrations.js # Third-party integration configs │ └── notificationTemplates.js # Email/notification templates │ ├── /docs/ # Documentation │ ├── api-reference.md # API documentation │ ├── event-timeline-guide.md # Event timeline user guide │ └── developer-guide.md # Developer documentation │ └── service-worker.js # Service worker for offline support

/approlearninghub/ │ ├── package.json # Updated with required dependencies ├── index.html # Main application entry point ├── offline.html # Offline fallback page │ ├── /api/ # API endpoints │ ├── index.js # Main API router │ ├── auth.js # Authentication endpoint │ ├── clinics.js # Clinics endpoints │ ├── courses.js # Courses endpoints │ ├── feeds.js # Feeds endpoints │ │ │ ├── /middleware/ # API middleware │ │ └── auth.js # Authentication middleware │ │ │ └── /utils/ # API utilities │ ├── db.js # Database utilities │ └── errors.js # Error handling utilities │ ├── /data/ # Local data for offline fallback │ ├── clinics.json # Sample clinics data │ ├── courses.json # Sample courses data │ └── users.json # Sample users data (for auth) │ ├── /js/ # Client-side JavaScript │ ├── apiAuthService.js # Authentication service │ ├── apiService.js # API client │ ├── clinics-browse.js # Clinics browser script │ ├── courses-browse.js # Courses browser script │ └── utils.js # Utility functions │ ├── /css/ # CSS styles │ ├── main.css # Main CSS file │ └── tailwind-emulated.css # Emulated Tailwind CSS │ ├── /images/ # Image assets │ ├── logo.png # Site logo │ ├── default-clinic.png # Default clinic image │ ├── default-course.png # Default course image │ ├── placeholder.png # Placeholder image │ │ │ ├── /clinics/ # Clinic images │ │ ├── video-techniques.jpg │ │ ├── lighting.jpg │ │ └── ... │ │ │ └── /courses/ # Course images │ ├── production-fundamentals.jpg │ ├── color-grading.jpg │ └── ... │ ├── /clinics/ # Clinic pages │ ├── browse.html # Clinics browser │ └── detail.html # Clinic details page │ ├── /courses/ # Course pages │ ├── browse.html # Courses browser │ └── detail.html # Course details page │ └── service-worker.js # Service worker for offline support

extended api...

Database and API Files Core Database Models

/api/models/event.js - Event model defining fields, relationships, and methods /api/models/timeline.js - Timeline model for event progression tracking /api/models/mediaAsset.js - Media assets model for various event stages /api/models/participant.js - Participant/attendee management

API Endpoints

/api/events/index.js - Main router for event endpoints /api/events/controller.js - Event CRUD operations /api/timelines/index.js - Timeline progression router /api/timelines/controller.js - Timeline stage management /api/events/media.js - Media preparation and management for events /api/events/promotion.js - Promotional tools and tracking /api/events/recap.js - Post-event recap generation and publishing /api/events/library.js - Integration with library for event archival

Middleware

/api/middleware/eventAuth.js - Event-specific authentication and permissions /api/middleware/mediaValidation.js - Validation for uploaded media /api/middleware/timelineValidation.js - Timeline stage validation

Database Utilities

/api/utils/timelineUtil.js - Timeline helper functions /api/utils/eventNotifications.js - Notification system for event stages /api/utils/mediaProcessing.js - Media processing pipeline utilities

Frontend Components Role-Based Dashboard Files

/dashboards/admin/events.html - Admin event management dashboard /dashboards/admin/event-detail.html - Admin detailed event view /dashboards/expert/events.html - Expert event management dashboard /dashboards/expert/event-timeline.html - Expert timeline management view /dashboards/regular/my-events.html - Regular user event participation view

JavaScript Controllers

/js/dashboards/eventManager.js - Event management main controller /js/dashboards/timelineController.js - Timeline visualization and control /js/dashboards/mediaManager.js - Media preparation and uploading interface /js/dashboards/promotionTools.js - Promotional content and scheduling /js/dashboards/eventRecap.js - Post-event reporting and analytics /js/dashboards/libraryIntegration.js - Library integration for content

CSS and Templates

/css/timeline.css - Timeline visualization styles /templates/event-stages.js - Timeline stage templates /templates/event-promotion.js - Promotional content templates /templates/event-recap.js - Recap report templates

Integration Files

/api/integrations/calendar.js - Calendar integration for events /api/integrations/notifications.js - Notification system for timeline events /api/integrations/mediaPlatforms.js - Integration with media platforms /api/integrations/marketingTools.js - Integration with marketing tools /api/integrations/analytics.js - Analytics for event performance

Documentation and Configuration

/docs/event-timeline-api.md - API documentation for event timeline features /api/config/eventStages.js - Configuration for event timeline stages /api/config/eventPermissions.js - Role-based permissions for event actions /api/config/notificationTemplates.js - Templates for event notifications

construction low-cost durable building materialslocalsustainability infrastructure

About

Approvideo Learning Hub - integration solutions library, video collection, learning modules, community infra clinics, Notion, Supabase, Zoom

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published