SQ | CI |
---|---|
We read training material from the web and learn from it by doing, but how do we keep that a bit organized? I came up with an idea: this small tool.
Given a 'url', it creates the entry in a markdown map and a folder and links them; in this way, you can easily jump between different sections inside your preferred ide. As you expand the map with new contents, you build some reference material, keep it local all the time, and searchable all the time on your daily coding and use it to fee your local llm
:).
in you want to check this quickly ...
just open this repo in your GitHub Codespace and run the demo as:
bash demo.sh zo
bash demo.sh sb
0 to 100 ... learn anything from the web
commands:
create_section = create a new section
section=https://www.cloudskillsboost.google/paths/16
./main.py zo create_section "$section"
done_section = tag a section as done
section=https://www.cloudskillsboost.google/paths/16
./main.py zo done_section "$section"
refresh_map = refresh the section map
./main.py zo refresh_map
refresh_links = refresh links to sections in the readme.md(s)
./main.py zo refresh_links
tip in
create_section
you can override the default toc title adding another#
hint below the one header created automatically in the section folder ex
# <https§§§www.cloudskillsboost.google§catalog>
> <https://www.cloudskillsboost.google/catalog>
# catalog
tip in
refresh_links
you can expand links from other sections automatically ex
# <https§§§www.cloudskillsboost.google§catalog>
> <https://www.cloudskillsboost.google/catalog>
https://www.cloudskillsboost.google/doc
expand the last link to point to the section for the doc - handy as anchor technique
# env
python -m venv .venv
. .venv/bin/activate
pip install .
# copy sample yaml conf
cp ./zero_to_one_hundred/tests/resources/map.yaml .
cat map.yaml
export MAP_YAML_PATH=map.yaml
# tip: add it to .bash_rc etc or some shell script
chmod +x *.py
# run main
./main.py zo help
0 to 100 ... learn anything from safari books https://learning.oreilly.com/member/login/
same as above but it can use some external lib to grab epub from oreilly
current commands:
snatch_book = snatch a book from safari
./main.py sb snatch_book https://learning.oreilly.com/library/view/rewire-your-brain/9781119895947
refresh_toc = refresh the toc with al the books info
./main.py sb refresh_toc
use what you prefer to grab epub/pdf from oreilly check this https://github.com/lorenzodifuccia/safaribooks or just save as pdf section by section with this https://chromewebstore.google.com/detail/reader-view/ecabifbgmdmgdllomnfinbmaellmclnh
# env
python -m venv .venv
. .venv/bin/activate
pip install .
# copy sample yaml conf
cp ./zero_to_one_hundred/tests_sb/resources/map.yaml .
cat map.yaml
export MAP_YAML_PATH=map.yaml
# tip: add it to .bash_rc etc or some shell script
vim map.yaml
# add your membership details :)
add your membership details :) and it will work
ex with mine :)
chmod +x *.py
./main.py sb help
- create new meta-book
url=https://learning.oreilly.com/library/view/hunt-the-pragmatic-programmer/020161622X/
./main.py sb snatch_book $url
and you have a toc.md
for free to use as your index (bookmark it)
as I use myself Lorenzo's great utility
safaribooks
I added some code to convert the downloaded epub contents into a related pdf and split that in chunks so I can easily use it on ipad or better remarkable for studying and later sync back in a repo for hands-on code... they call that learning by doing 🖖🏻
when you start to have a a few 0to100 based folders
gist to sync multiple 0to100 based repos gist venv auto activate for 0to100 folders
- zo
https://github.com/obar1/zero2hero
- sb
mostly private contents,
sorry but I don't want to get suited :P