Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
@laboratoria/curriculum-parser
Advanced tools
Command line tool used to parse projects, topics, exercises, etc, written in markdown @Laboratoria
Command line tool used to parse content written in markdown at @Laboratoria (See Laboratoria/bootcamp).
Install as a development dependency in your project:
npm i --save-dev @laboratoria/curriculum-parser
You should now be able to run it with npx
:
npx curriculum-parser # when already installed in project
# or alternatively using full package name (with org)
# this works even if not previously installed.
npx @laboratoria/curriculum-parser
You can also install curriculum-parser
globally using npm
like this:
npm i -g @laboratoria/curriculum-parser
If you get a permission error please try using sudo
(you may need admin
permissions depending on your node installation).
# using `sudo` (only if previous step failed)
sudo npm i -g @laboratoria/curriculum-parser
Alternatively you can install using a local clone.
# clone from your own fork
git clone git@github.com:<your-username>/curriculum-parser.git
cd curriculum-parser
npm install
npm link
If the above command fails, try using sudo
:
sudo npm link
If you installed globally using npm
you can simply re-install like so:
npm i -g @laboratoria/curriculum-parser
If you chose to install using a local clone, you can update your clone to upstream main:
# go into local copy of repo
cd curriculum-parser
# if not yet added a reference to upstream remote we add it
git remote add upstream git@github.com:Laboratoria/curriculum-parser.git
# fetch changes and merge upstream/main into local main
git fetch upstream
git merge upstream/main
# you may also want to push changes to your fork
git push origin main
After installing globally (or linking with npm link
) you should have the
curriculum-parser
command available in your PATH
.
curriculum-parser --help
Usage: curriculum-parser [options] [command]
Options:
-V output the version number
-h, --help display help for command
Commands:
project [options] <dir> Parse a project
topic [options] <dir> Parse a topic
part [options] <dir> Parse a part
challenge [options] <dir> Parse a challenge
help [command] display help for command
You can also access usage (help) info for individual commands like so:
curriculum-parser project --help
Usage: curriculum-parser project [options] <dir>
Parse a project
Arguments:
dir path to project directory
Options:
--repo <string> Repository
--version <string> Project version
--lo <string> Path to yml file with reference learning objectives
--debug Show error stack traces
-h, --help display help for command
Laboratoria/bootcamp
repoParsing a topic and printing the resulting JSON output to stdout
.
curriculum-parser topic topics/javascript/ \
--repo Laboratoria/bootcamp \
--version 5.5.0
Parsing a topic and writing the parser's output (stdout
) to a file (using
output redirection in the shell).
curriculum-parser topic topics/javascript/ \
--repo Laboratoria/bootcamp \
--version 5.5.0 \
> "build/topics/javascript.json"
Laboratoria/bootcamp
repocurriculum-parser part topics/intro-ux/00-que-es-uxd/00-que-es-uxd/ \
--repo Laboratoria/bootcamp \
--version 5.5.0
Laboratoria/bootcamp
repocurriculum-parser challenge topics/javascript/01-basics/06-exercises/01-coin-convert/ \
--repo Laboratoria/bootcamp \
--version 5.5.0
Laboratoria/bootcamp
repocurriculum-parser project projects/01-cipher/ \
--repo Laboratoria/bootcamp \
--version 5.5.0 \
--lo=./learning-objectives
This project contains an array in lib/common.js
called
knownTracks
which contains the list of tracks that are known by the parser.
If a new track is ever going to be added to the curriculum, it must be added to this array or else it'd throw the corresponding Invalid track error.
FAQs
Command line tool used to parse projects, topics, exercises, etc, written in markdown @Laboratoria
The npm package @laboratoria/curriculum-parser receives a total of 26 weekly downloads. As such, @laboratoria/curriculum-parser popularity was classified as not popular.
We found that @laboratoria/curriculum-parser demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.