Skip to content

VincentSD/GWAC-MPPR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

288 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

G-WAC Short Course: Git, GitHub & Infectious Disease Modeling

A comprehensive, interactive short course designed to teach version control fundamentals and infectious disease modeling using the powerful odin and monty packages. This course is structured for maximum learning in minimal time with hands-on, collaborative learning experiences.

🎯 Course Overview

Duration: 8 hours total (4 hours per part)
Format: Interactive online learning with real-time collaboration
Target Audience: Students, researchers, and professionals in public health and computational modeling

Course Structure

Part 1: Git & GitHub Fundamentals (4 hours)

  • Module 1: Introduction to Version Control
  • Module 2: GitHub Collaboration
  • Module 3: R with Git & GitHub

Part 2: Infectious Disease Modeling (4 hours)

  • Module 4: Introduction to odin
  • Module 5: Model Fitting with monty
  • Module 6: Advanced Applications

✨ Key Features

πŸš€ Interactive Learning

  • Live Code Execution: Run Git commands and R code directly in the browser
  • Real-time Collaboration: Work with classmates in real-time
  • Progress Tracking: Monitor your learning progress
  • Instant Feedback: Get immediate results from your code

πŸ’» Hands-on Experience

  • Git Terminal Simulator: Practice Git commands with realistic responses
  • R Studio Environment: Execute odin & monty code in a familiar interface
  • Model Building: Create and simulate infectious disease models
  • Parameter Exploration: Experiment with different model parameters

πŸ‘₯ Collaborative Learning

  • Live Chat: Discuss problems and solutions with peers
  • Status Sharing: See what classmates are working on
  • Group Discussions: Learn from collective experiences
  • Peer Support: Help and get help from fellow students

πŸ› οΈ Technology Stack

  • Frontend: Modern HTML5, CSS3, JavaScript (ES6+)
  • Interactive Elements: Custom terminal simulator, R Studio interface
  • Real-time Features: WebSocket-like collaboration system
  • Responsive Design: Works on all devices and screen sizes
  • Progressive Web App: Installable, offline-capable web application
  • Dark Mode: Automatic theme switching with system preference detection
  • Error Handling: Comprehensive error tracking and user-friendly notifications
  • Performance Monitoring: Real-time performance and memory usage tracking

πŸ“š Course Materials

Based on Leading Resources

  • Git Fundamentals: Industry best practices for version control
  • Odin-Monty Workshop: Materials from Imperial College London MRC-IDE team
  • Real-world Applications: Practical examples from infectious disease research

Interactive Components

  • Git Command Simulator: Practice version control commands
  • R Code Executor: Run epidemiological models
  • Collaboration Platform: Real-time peer interaction
  • Progress Dashboard: Track your learning journey

πŸš€ Getting Started

Prerequisites

  • Basic computer literacy
  • Interest in version control and/or infectious disease modeling
  • No prior Git or R experience required

Required Software

Progressive Web App Features

  • Install as App: Click the install button to add to your home screen
  • Offline Access: Course content works without internet connection
  • Push Notifications: Get notified about course updates and new content
  • Background Sync: Automatically sync your progress when online

R Packages

# Install required packages from R-universe
install.packages(
  c("monty", "dust2", "odin2"),
  repos = c("https://mrc-ide.r-universe.dev", "https://cloud.r-project.org")
)

πŸŽ“ Learning Objectives

By the end of this course, you will be able to:

Version Control Skills

  • βœ… Use Git for tracking changes in your projects
  • βœ… Collaborate effectively on GitHub
  • βœ… Manage R projects with version control
  • βœ… Implement reproducible research practices

Modeling Skills

  • βœ… Build epidemiological models with odin
  • βœ… Fit models to data using monty
  • βœ… Interpret model outputs and parameters
  • βœ… Apply models to real-world scenarios

πŸ”§ Interactive Features

Git Terminal Simulator

  • Practice Git commands with realistic responses
  • Learn through trial and error
  • Get instant feedback on your commands
  • Build confidence with version control

R Studio Interface

  • Familiar R Studio-like environment
  • Execute odin & monty code
  • View model outputs and plots
  • Experiment with parameters

Real-time Collaboration

  • See classmates' progress in real-time
  • Chat and discuss problems
  • Share solutions and insights
  • Build a learning community

Enhanced User Experience

  • Dark/Light Mode: Toggle between themes or follow system preference
  • Offline Mode: Continue learning without internet connection
  • Install as App: Add to home screen for app-like experience
  • Smart Notifications: Get helpful reminders and course updates
  • Performance Monitoring: Automatic detection of performance issues
  • Error Recovery: Graceful error handling with helpful suggestions

πŸ“± Responsive Design

The course platform is optimized for all devices:

  • Desktop: Full-featured experience with side-by-side collaboration
  • Tablet: Touch-friendly interface with adaptive layouts
  • Mobile: Streamlined mobile experience for on-the-go learning

🌐 Browser Support

  • Modern Browsers: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+
  • Mobile Browsers: iOS Safari 14+, Chrome Mobile 90+
  • Progressive Enhancement: Core functionality works without JavaScript

πŸš€ Deployment

GitHub Pages Ready

This course is designed to be deployed on GitHub Pages:

  1. Push to GitHub: Upload your course materials
  2. Enable Pages: Configure GitHub Pages in repository settings
  3. Custom Domain: Optionally configure a custom domain
  4. HTTPS: Automatic SSL certificate from GitHub

Progressive Web App Deployment

The course automatically becomes a PWA when deployed:

  1. Service Worker: Automatically caches content for offline use
  2. Manifest: Provides app-like installation experience
  3. Offline Support: Core functionality works without internet
  4. Push Notifications: Ready for future notification features

Local Development

For local development and testing:

# Clone the repository
git clone https://github.com/yourusername/g-wac-course.git

# Open in your browser
# Or use a local server
python -m http.server 8000
# Then visit http://localhost:8000

Development Features

  • Error Tracking: Comprehensive error logging and debugging tools
  • Performance Monitoring: Real-time performance metrics
  • Theme Development: Easy theme customization with CSS variables
  • PWA Testing: Test PWA features in development mode

🀝 Contributing

We welcome contributions to improve the course:

  1. Fork the repository
  2. Create a feature branch
  3. Make your improvements
  4. Submit a pull request

Areas for Contribution

  • Additional interactive exercises
  • More model examples
  • Improved collaboration features
  • Accessibility enhancements
  • Translation to other languages

πŸ“„ License

This course is based on materials from the Odin-Monty Workshop and is released under appropriate licenses for educational use.

πŸ™ Acknowledgments

  • Imperial College London MRC-IDE Team: For the excellent odin-monty workshop materials
  • G-WAC Community: For supporting this educational initiative
  • Open Source Community: For the tools and frameworks that make this possible

πŸ“ž Support & Contact

Getting Help

  • Course Issues: Check existing issues or create new ones
  • Technical Problems: Contact the development team
  • Content Questions: Reach out to course instructors

Stay Connected

  • Course Updates: Follow the repository for new features
  • Community: Join G-WAC discussions and events
  • Feedback: Share your experience and suggestions

🎯 Quick Start Guide

  1. Install Software: Git, R, and RStudio
  2. Join Course: Access the course platform
  3. Start Learning: Begin with Part 1 (Git & GitHub)
  4. Practice: Use interactive features to reinforce learning
  5. Collaborate: Work with classmates in real-time
  6. Build Models: Create infectious disease models in Part 2
  7. Apply Knowledge: Use skills in your own projects

Built with ❀️ for the G-WAC community
Empowering the next generation of computational modelers

About

Modeling for pandemic preparedness and response

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors