ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

用 al-folio 搭建数据科学课程主页:《Data Science Fundamentals》课程页结构全解析

用 al-folio 搭建数据科学课程主页:《Data Science Fundamentals》课程页结构全解析 用 al-folio 搭建数据科学课程主页《Data Science Fundamentals》课程页结构全解析【免费下载链接】al-folioA beautiful, simple, clean, and responsive Jekyll theme for academics项目地址: https://gitcode.com/GitHub_Trending/al/al-folio本篇技术指南以 al-folio 仓库中的课程页示例 _teachings/data-science-fundamentals.md 为主体系统讲解如何使用_teachings集合为课程创建结构化主页从 frontmatter 元数据、逐周教学日程schedule到正文信息块的完整写法并深入渲染链路、Google 日历嵌入与本地构建验证。读完本文你将掌握一门新课程从新增 Markdown 文件、配置字段到在/teaching/页面自动分组展示的完整实战方案可直接复用于任意学术课程站点。课程页文档的定位一篇完整的 Jekyll 集合条目在 al-folio 中_teachings/data-science-fundamentals.md 是一份“Data Science Fundamentals”课程的完整内容文件2024 年春季学期授课教师 Prof. Data上课时间周一与周三 14:00-15:30地点 Science Building Room 202。它由两部分组成frontmatter 元数据layout: course、title、description、instructor、year、term、location、time、course_id以及一个包含 6 周详细安排的schedule列表Markdown 正文## Course Overview、## Prerequisites、## Textbooks、## Grading四个小节用于承载课程概览、先修要求、推荐教材与评分标准等自由文本内容。从仓库定位看这类文件属于 v1.x 架构中的starter 示例内容。docs/ARCHITECTURE.md 明确说明 al-folio v1.x 是“thin Jekyll starter, not a theme”仓库只拥有接线配置、示例内容_pages、_posts、_projects、_news、_teachings、_books、_bibliography、文档与跨插件测试而真正的运行时course布局、courses.liquid渲染等则归属al_folio_core等版本化 gem。因此本文件的价值在于它是一份可直接照抄、字段齐全、结构规范的课程页模板。前置接线teachings 集合在 Jekyll 配置中的注册课程页能正常渲染依赖 _config.yml 中的集合声明collections: books: output: true news: defaults: layout: post output: true projects: output: true teachings: output: true要点说明teachings:集合声明了output: true意味着_teachings/下每个 Markdown 文件都会被 Jekyll 构建为独立页面这与books、news、projects一致与news不同teachings没有在集合级指定默认layout因此每个课程文件必须自己声明layout: course否则无法套用课程布局_teachings/目录下目前有两份示例data-science-fundamentals.md6 周、Spring 2024与 introduction-to-machine-learning.md8 周、Fall 2023含第 6 周 Midterm Exam后者可作为多周、含考试周安排的第二种参考写法。frontmatter 字段逐项解析课程页的元数据全部集中在 YAML frontmatter 中。docs/CUSTOMIZE.md 的 “Creating a teachings collection” 一节给出了权威字段说明结合本示例文件可归纳为以下表格字段本示例取值必填/可选说明layoutcourse必填必须为course否则不会使用课程布局渲染titleData Science Fundamentals必填课程标题description课程概述段落可选简要课程描述instructorProf. Data可选授课教师姓名year2024必填开课年份用于课程分组termSpring可选学期如 Fall、Spring、Summer用于同年内排序locationScience Building, Room 202可选上课地点timeMondays and Wednesdays, 2:00-3:30 PM可选上课时间course_iddata-science-fundamentals必填课程唯一标识必须全局唯一schedule6 周教学安排列表可选逐周日程会被自动格式化为表格两点关键约束来自 docs/CUSTOMIZE.md每个课程文件的course_id必须唯一课程在/teaching/页面按year分组展示同年内按term排序schedule小节会被自动格式化为表格。schedule逐周教学日程的数据结构schedule是本示例文件中最具复用价值的结构化数据。它以列表形式组织每周包含week、date、topic、description与materials课程材料列表每项含name与url。原始 6 周安排完整罗列如下周次日期主题内容描述1Feb 5Introduction to Data Science数据科学工作流与关键概念概览2Feb 12Data Collection and APIs通过 API、网页抓取与数据库收集数据的方法3Feb 19Data Cleaning and Preprocessing处理缺失值、异常值与数据变换的技术4Feb 26Exploratory Data Analysis描述性统计、可视化与模式发现5Mar 4Statistical Analysis假设检验、置信区间与统计推断6Mar 11Data Visualization高效数据可视化的原则与工具对应的 YAML 结构以第 1 周为例为schedule: - week: 1 date: Feb 5 topic: Introduction to Data Science description: Overview of the data science workflow and key concepts. materials: - name: Syllabus url: /assets/pdf/example_pdf.pdf - name: Slides url: /assets/pdf/example_pdf.pdf实操说明课程材料url指向仓库内的相对路径资源例如本仓库实际存在的 assets/pdf/example_pdf.pdf示例中讲义、作业均复用了该占位 PDF如果材料托管在外部平台可替换为相应资源地址请以你自己的合法资源为准避免沿用示例占位description建议用一句话精确概括当周讲授内容便于学生在课表页快速定位若某周没有材料例如考试周可以像 introduction-to-machine-learning.md 第 6 周那样省略materials字段仅保留week、date、topic、description。正文部分概览、先修、教材与评分frontmatter 之下的 Markdown 正文会在课程独立页面中展示适合放不适合结构化表格的内容。本示例给出了四个标准小节Course Overview明确课程目标与学习成果。本课程提供数据科学原理与实践的综合导论学生将学习端到端的数据科学工作流、获得数据操作工具的实操经验、培养数据可视化与表达技能、运用统计方法从数据中提炼洞察Prerequisites先修要求。基础编程能力最好是 Python、入门统计知识、熟悉基础代数Textbooks推荐教材。Wes McKinney 的《Python for Data Analysis》、Joel Grus 的《Data Science from Scratch》Grading评分构成。作业 50%、项目 40%、课堂参与 10%。这套“学习成果 先修 教材 评分”的结构是学术课程页的通用模板可直接沿用到任意课程。你也可以在正文中追加其他 Markdown 小节如课程政策、考核日程、Office Hours正文会原样呈现在课程详情页。渲染链路从 Markdown 到 /teaching/ 页面课程集合的展示由 _pages/teaching.md 驱动其内容核心是两行 include{% include calendar.liquid calendar_idtestgmail.com timezoneAsia/Shanghai %} {% include courses.liquid %}courses.liquid负责遍历_teachings集合按year分组、term排序渲染所有课程入口并指向各课程的独立页面calendar.liquid嵌入 Google 日历详见下一节页面 frontmatter 中声明了calendar: true这是日历脚本加载的开关——docs/CUSTOMIZE.md 指出只有开启该字段的页面才会加载日历相关脚本避免无关页面白白引入脚本。从 v1.x 架构看course布局与courses.liquid、calendar.liquid这类 include 属于 gem 运行时al_folio_core而非 starter 仓库内容。这一点对应 docs/ARCHITECTURE.md 描述的“静默失败”模式若 gem 未加载或开关未开启标签会输出空字符串而不报错。因此排查“课程页不显示”时应依次检查gem 是否同时存在于 Gemfile 与_config.yml的plugins:列表、集合是否声明output: true、页面 frontmatter 是否开启对应开关。在课程页中嵌入 Google 日历教学页支持直接内嵌 Google 日历便于集中展示课程安排。基础用法来自 docs/CUSTOMIZE.md{% include calendar.liquid calendar_idyour-calendar-idgroup.calendar.google.com timezoneYour/Timezone %}参数说明calendar_idGoogle 日历 ID可在 Google Calendar 设置 → 集成日历 → Calendar ID 中获取示例文件里用的是占位值testgmail.com实际部署时务必替换timezone时区例如UTC、Asia/Shanghai、America/New_York默认UTC当前示例页使用了Asia/Shanghaistyle可选参数用于自定义 iframe 样式例如styleborder:0; width:100%; height:800px;默认值为border:0; width:100%; height:600px;。使用前提承载日历的页面 frontmatter 必须声明calendar: true否则脚本不会加载。实战新增一门课程并本地验证参照本示例新增一门课程只需三步创建课程文件在_teachings/下新建your-course.md复制本示例的 frontmatter 骨架填写layout: course、唯一的course_id、title、year并按需补充instructor、term、location、time、description与逐周schedule补充正文在 frontmatter 后追加 Course Overview、Prerequisites、Textbooks、Grading 等 Markdown 小节本地构建验证从仓库根目录按 AGENTS.md 的已验证命令集执行bundle install bundle exec jekyll build --baseurl /al-folio注意两点对应 AGENTS.md 的说明本仓库_config.yml已设置baseurl: /al-folio直接执行bundle exec jekyll build即可--baseurl /al-folio属于冗余但无害的写法本地开发服务器地址为http://localhost:4000/al-folio/。若使用 Docker 方式运行AGENTS.md 给出的验证路径是docker compose up -d后访问http://127.0.0.1:8080/al-folio/。构建完成后可在/teaching/页面看到新课程自动出现在对应year分组中并与其term排序位置一致点击课程入口即进入由schedule自动生成表格的课程详情页。常见问题与排查清单课程页不出现/不渲染优先检查集合声明。teachings集合必须在 _config.yml 中声明且output: true文件 frontmatter 必须写layout: course且course_id不与已有课程重复分组与排序不符合预期year用于分组、term用于同年排序确认这两个字段拼写与取值规范如Fall、Spring、Summer日历不显示检查页面 frontmatter 是否开启calendar: true并确认calendar_id已替换为真实日历 ID、时区参数合法功能静默失效v1.x 采用“Gemfile 与_config.yml两处一致”的激活契约任何依赖 gem 的功能若只改了一处配置都会无报错地不生效排查时务必两处同时核对。参考文件索引课程页示例_teachings/data-science-fundamentals.md、_teachings/introduction-to-machine-learning.md集合配置_config.ymlcollections 段展示页面_pages/teaching.md官方指南docs/CUSTOMIZE.md课程集合、docs/CUSTOMIZE.mdGoogle 日历嵌入架构与边界docs/ARCHITECTURE.md、AGENTS.md材料占位资源assets/pdf/example_pdf.pdf【免费下载链接】al-folioA beautiful, simple, clean, and responsive Jekyll theme for academics项目地址: https://gitcode.com/GitHub_Trending/al/al-folio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表