Class Website for UCSD's Data Science in Practice
- Install chruby and ruby-install with Homebrew (install ruby 3.4.1)
brew install chruby ruby-installruby-install ruby 3.4.1 - cd to project dir and chruby for ruby-3.4.1 #this should be default from the
.ruby-versionfile going forward.cd /path/to/your/projectchruby ruby-3.4.1 bundle initto create gemfile- Set up gems to be installed locally in project dir:
bundle config set --local path 'vendor/bundle'This creates a.bundlefile - Install Jekyll 4.2:
bundle add jekyllAt this time (9/5/2022) 4.2 auto installs - Create jekyll scaffold:
bundle exec jekyll new --force --skip-bundle .bundle install bundle add webrick- Give it a test run by following the local dev build instructions below!
- Install the Remote - Containers extension in VSCode
- Open the project in VSCode
- Click on the green icon in the bottom left corner of the window and select "Reopen in Container"
- This will build the container and open the project in a containerized environment with all the necessary dependencies installed.
All dev builds will be built into a dev-docs/ dir. This dir is included in .gitignore and is only used for development builds. Any specific dev config should bd included in the _config_dev.yml file. Your absolute path to dev-docs will be different.
bundle exec jekyll serve --config _config.yml,_config_dev.yml --destination ./dev-docs#builds and starts local server on localhost- navigate to http://localhost:4000/cogs108/
- A merge or direct push to main branch will automatically trigger the jekyll workflow which will build and deploy the main branch to production.
- Check status in github actions for build results.
- Navigate to https://COGS108.github.io/LectureNotes/
- If using a custom domain, add the
CNAMEfile with the domain into the root
This dir is excluded from the jekyll build chain (excluded in the config.yaml file).
Set this up correctly for the next iteration:
Change this to choose where to pick data from
data_folder: su24 becomes e.g. wi25
This folder includes data that changes from quarter to quarter, e.g. course calendar. This allows reuse without recreating data each term. Eventually this can be abstracted into variables.
The following tags can be applied within a row for each course activity, set within the _data/term/course_calendar.csv file.
- LECT --> lecture
- DEMO --> in-class demo
- CNCL --> no class, or canceled class
- ASSG --> assignment due date
- EXAM --> exam due date
- GRPW --> groupwork
- PRAC --> practice problems
Any other tag used will default to a black colored tag