How nglelinh/optimization-for-data-science-iuh-2025 works
Optimization in Data Science — IUH is a bilingual Jekyll course site. Students browse chapter landing pages and lessons, optionally use interactive demonstrations, search indexed lesson text, and switch between English and Vietnamese equivalents. Jekyll combines chapter posts, layouts, configuration, and language plugins into published pages; a search generator produces language-specific JSON indexes consumed by the browser search UI. The graph reflects sampled generators and JavaScript; some template wiring and modern-track lesson internals were only evidenced by the tree and README.
Components 15
Course content
- English lessons
contents/en - Vietnamese lessons
contents/vi - Classical track
contents/en/chapter01/_posts - Modern track
contents/en/chapter26
Jekyll publishing
- Jekyll templates
_layouts/default.html - Language plugins
_plugins/multilang.rb - Lesson URL plugin
_plugins/multilang_post_url.rb - Search generator
_plugins/search_generator.rb
Browser experience
- Published course pages
- Search indexes
- Search interface
public/js/search.js - Language switcher
public/js/multilang.js
Learning tools
- Interactive demos
contents/en/chapter03/conjugate_function_interactive.html
Other components
- Student
- Lunr.js
Connections 18
- Student → Published course pages: browses
- Student → Search interface: searches
- Student → Language switcher: switches language
- Student → Interactive demos: runs demos
- Jekyll templates → Published course pages: renders
- Language plugins → Jekyll templates: registers tags
- Lesson URL plugin → Jekyll templates: resolves links
- Language plugins → English lessons: maps languages
- Language plugins → Vietnamese lessons: maps languages
- Search generator → English lessons: reads posts
- Search generator → Vietnamese lessons: reads posts
- Search generator → Search indexes: writes indexes
- Search interface → Search indexes: loads index
- Search interface → Lunr.js: queries index
- Search interface → Published course pages: opens results
- Language switcher → Published course pages: navigates pages
- English lessons → Jekyll templates: supplies lessons
- Vietnamese lessons → Jekyll templates: supplies lessons