Provision new lessons and/or episodes. These functions will likely only be used once.
- Create a carpentries lesson
Functions to work build, audit, and preview lesson content. These will be used with regularity in your work.
- Build your lesson and work on it at the same time
- Build your lesson site
- Site generator for sandpaper
- Pre-build validation of lesson elements
Functions to programmatically assess and modify configuration and source elements of a lesson. These are often used when developing a lesson.
- Show files in draft form
- Get the configuration parameters for the lesson
- Set individual keys in a configuration file
- Set the order of items in a dropdown menu
- Helpers to extract contents of dropdown menus on the site
- Move an episode in the schedule
- Create a syllabus for the lesson
- Clear the schedule in the lesson
- Remove all files associated with the site
- This will strip existing episode prefixes and set the schedule
Lessons with generated content (R Markdown lessons) have an extra file called
renv/profiles/lesson-requirments/renv.lock that records the package versions used to build the lesson. These functions provide ways for you to manage these packages and turn it on or off while previewing the lesson.
Lesson updates will happen automatically on a regular schedule on GitHub. If you want to expediate those updates or update the components on your own computer, these functions will help you with that.
- Update the local version of the carpentries style
- Update github workflows
Internal functions for deploying on continuous integration. Users are not intended to work with these.
- (INTERNAL) Build and deploy the site with continous integration
- Report session information to the user
- Internal cache for storing pre-computed lesson objects
- Create a code handout of challenges without solutions
- Build plain markdown from the RMarkdown episodes
- Wrapper for site builder
- Build an episode to markdown
- Build a single episode html file
- Render html from a markdown file
- Global Options
Components to build aggregate pages such as All in One and Keypoints
- read all HTML files in a folder
- Get sections from an episode's HTML page
- Make a section and place it inside the All In One page
- Make a section of aggregated images
Tools for discovering resources and managing their hashes in a text file database.
- Identify what files need to be rebuilt and what need to be removed
- Get the database of built files and their hashes
- Get the expected hash from a set of built files
- Get the full resource list of markdown files
- Template files
- Create a valid, opinionated yaml list for insertion into a whisker template
Internal documentation for the temporary lesson and remote used as a test fixture created and destroyed before and after tests.