{"id":40674495,"url":"https://github.com/csmberkeley/csm-16b","last_synced_at":"2026-01-21T09:38:37.276Z","repository":{"id":36050226,"uuid":"195907437","full_name":"csmberkeley/csm-16b","owner":"csmberkeley","description":"Worksheet and content repository for CSM 16B","archived":false,"fork":false,"pushed_at":"2025-02-28T16:44:30.000Z","size":26602,"stargazers_count":5,"open_issues_count":0,"forks_count":4,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-07-29T09:05:39.770Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TeX","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csmberkeley.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-09T01:07:40.000Z","updated_at":"2025-02-28T16:44:34.000Z","dependencies_parsed_at":"2023-10-15T07:53:05.755Z","dependency_job_id":"bec64905-45b8-4741-8c3a-5803e5911151","html_url":"https://github.com/csmberkeley/csm-16b","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/csmberkeley/csm-16b","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csmberkeley%2Fcsm-16b","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csmberkeley%2Fcsm-16b/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csmberkeley%2Fcsm-16b/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csmberkeley%2Fcsm-16b/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csmberkeley","download_url":"https://codeload.github.com/csmberkeley/csm-16b/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csmberkeley%2Fcsm-16b/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28631418,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-21T09:38:37.181Z","updated_at":"2026-01-21T09:38:37.265Z","avatar_url":"https://github.com/csmberkeley.png","language":"TeX","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CSM 16B Repository\n\nThis directory contains all the material developed for CSM 16B.\n\nFor developing, please read through [`LaTeX-best-practices.md`](./00-LaTeX-best-practices.md) for a list of guidelines for writing LaTeX, and the following guide on [`Git`](https://rogerdudler.github.io/git-guide/)\n\nThe documents here are written in LaTeX by a team. Adhering to these guidelines will help avoid conflict resolution\nand allow the writing process to be collaborative.\n\n# Organization of this repository\n\n    fa19/               - Content for the Fa19 semester \n    questionBank/       - Central source for all questions\n    testing/            - Testing directory\n\n## `fa19/`\nInside each semester's directory, there are subfolders for each week's worksheets. \nInside that folder, let's say 01/, there will be multiple LaTeX files: ws01.tex, meta01.\ntex, and sol01.tex. Compiling each and everyone of these files will output the \nworksheet, meta, and solutions respectively. The body.tex file is used to pick and \nchoose which questions will go onto the worksheet.\n\n## `questionBank/`\nInside the `questionBank/` directory, there are subfolders for each questions by topic.\nInside a topic, let's say ode, there will be multiple LaTeX files such as rc_circuit.tex \nand mech_ode.tex. Each individual file corresponds to a single question. If you want to \nsee what your LaTeX output looks like, the next section will explain how to do so. The \nreason for keeping the worksheets and the questions separate is so that future semesters \ncan quickly plug-in from question bank. For example, a question may no longer be in scope\nin the future. Having question bank separate from semester gives the freedom to pick and\nchoose which to reuse or remove.\n\n## `test/` and `testing/`\nThe sole purpose of the testing folder is to have an environment in which you can create \ntest question.tex files and compile them in the `test` folder. For the purposes of the \nrepository, please do not add/commit/or push your changes in this folder or the `test` \nfolder. The `test` folder is an identical environment as the other numbered folders. You \ncan pick and choose which questions to compile using the appropriate commands. It will \nmake more sense on how to test code once looking at the repository.\n\n# Installation Requirements\n    git               - https://git-scm.com/downloads\n    LaTeX             - https://www.latex-project.org/get/\n    make              - You can download make through XCode on Mac, or through cygwin / cmake on Windows.\n\n# Compiling Instructions\n\nYou can use pdflatex to compile the ws.tex, meta.tex, sol.tex, or test.tex files, or you can choose to just use the Makefiles. \n\nThe current Makefile commands are:\n\n 1. make ws: This makes the vanilla worksheet that the students will see.\n 2. make sol: This will make the solutions for students to see after section.\n 3. make meta: This will create the weekly metas that contain solutions along with step by step guides and teaching tips.\n 4. make test: This will compile your test file in the testing directory.\n 5. make all: This will make the worksheet, solutions, and meta, and create a final build folder with all three files inside. \n 6. make clean: This will remove any log/out files, and pdfs that were generated.\n 7. make cleanpdfs: This will just remove the pdfs that were generated.\n\nYou can run these commands to compile your LaTeX files in an easier fashion. Remember to always run `make clean` before pushing anything to git.\n\n# Short Guide to Git\n\n## 1. Clone the Respository\n\n    git clone https://Username@github.com/csmberkeley/csm-16b.git\n\n## 2. Branch off master\nAfter cloning the repository and setting up LaTeX, pull in any updates from Github origin.\n\n    git checkout master\n    git pull origin master\n\nThen, create a new branch off master and give it a descriptive name.\n\n    git checkout -b taejin/rlc_circuits\n\nTo ensure two people don't create the same branch name, use a [slash](https://stackoverflow.com/a/68010041)\nto separate the creator from the feature.\n\n## 3. Making changes\n\nMake changes as you would normally and commit them incrementally. Write descriptive commit messages and break larger changes into smaller parts.\n\nStart in the `fa19` directory and edit the content in `questionBank`. Note that the repository has split up worksheets from their questions: all questions are stored in `questionBank` under topics for version control and maintainability.\n\nAfter making a few changes, verify that the changes appear as expected by re-making the handouts. The handouts build to the published directory.\n\n    make all\n\nOnce you've made some changes, add them to the staging area using `git add`\n\n    git add file.tex or git add folder/\n    \nYou can also add everything, but be careful you don't add binaries. You can configure these in `.gitignore`\n    \n    git add .\n    \nIf you added something, but made a mistake, you can always remove it.\n\n    git rm file.tex\n\nUsing patch mode is recommended when staging changes to ensure only that only the desired diffs are included in the commit.\n\n    git add -p \n\nOnce satisfied, you can commit your changes and give it a descriptive but short message.\n\n    git commit -m \"changed RLC Circuit diagram dimensions\"\n\nclean and push the branch to Github origin.\n\n    make clean\n    git push origin taejin/rlc_circuits\n\n## 4. Pull request\nTo integrate your changes into the codebase, come back to this online repo and create a new pull request for the branch. Then assign the current maintainers for review, apply relevant labels, and set the milestone to the current release target.\nTo avoid merge conflicts, it is important to keep in-sync with team members if you are working on the same piece of code.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsmberkeley%2Fcsm-16b","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcsmberkeley%2Fcsm-16b","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsmberkeley%2Fcsm-16b/lists"}