Appendix 2 - Cheat Sheets and quick info #

Electrical Part Tables #


  • package types

  • reading specs

  • datasheets

Nice Libraries & Resources #

Multi-Language #

Ultralight - “Next-generation HTML renderer for apps and games”

Bit like Electron, but less shit. Supports C, C++, C#, Rust, Java, and Go

C #

Awesome-C - “A curated list of awesome C frameworks, libraries, resources and other shiny things. Inspired by all the other awesome-… projects out there.”

Nuklear - A single-header ANSI C immediate mode cross-platform GUI library

GuiLite.h - “!The smallest header-only GUI library (4 KLOC) for all platforms”

Protothreads - “extremely lightweight stackless threads designed for severely memory constrained systems”

C++ #

Keep in mind everything from the above should still work

Rang - “A Minimal, Header only Modern c++ library for terminal goodies”

NanoGUI - “Minimalistic C++/Python GUI library for OpenGL, GLES2/3, Metal, and WebAssembly/WebGL”

Midifile - C++ classes for reading/writing Standard MIDI Files

Elements - “lightweight, fine-grained, resolution independent, modular GUI library.”

Fast IO - “a new C++20 library for extremely fast input/output and aims to replace iostream and cstdio. It is header-only”

Interactive C++ for Data Science - Like Jupyter Notebooks

NanoLog - “an extremely performant nanosecond scale logging system for C++ that exposes a simple printf-like API.”

Rust #

Nannou - Creative Coding Framework for Rust

pyo3 - Rust bindings for python, write python modules in rust

Go #

Lorca - “A very small library to build modern HTML5 desktop apps in Go. It uses Chrome browser as a UI layer. Unlike Electron it doesn’t bundle Chrome into the app package, but rather reuses the one that is already installed.”

Pixel - “A hand-crafted 2D game library in Go”

Python #

NumPy Illustrated: The Visual Guide to NumPy (Lev Maximov)

Full Stack Python Course, has some info on more comon libraries

Python-Cheatsheet by gto76 on github

Only including the less common ones here. If you’re new to python you should look into Numpy, Matplotlib, Pygame, Pandas, and Requests. Those more or less make up the

Sympy - Symbolic computation for python.

Pretty Errors - “Prettify Python exception output to make it legible.”

Pampy - Pattern Matching for Python

Rich - library for rich text and beautiful formatting in the terminal

Manim - “Animation engine for explanatory math videos” used by 3Blue1Brown

PyNuklear - Nuklear (see above) binding for python

Guietta - “A tool for making simple Python GUIs”

Kivy - GUI framework

Typer - “Typer, build great CLIs. Easy to code. Based on Python type hints.”

Python-Fire - “a library for automatically generating CLIs from absolutely any Python object.”

Beautiful Soup - Web scraping

bokeh - “Bokeh is an interactive visualization library for modern web browsers” (yes, it uses python)

MoviePy - “a Python library for video editing: cutting, concatenations, title insertions, video compositing (a.k.a. non-linear editing), video processing, and creation of custom effects”

Pint - work with units, including prefixes like kilometers

Also see pyO3 in rust above, which allows for writing python modules. Of course python modules can be written in C or C++, but doing so in Rust is safer, because, Rust.

For Matplotlib, I do recomend looking at the aviailable Matplotlib colormaps and color map normalization as the colors used to view your data can make a huge difference in how readable it is

nbterm: Jupyter Notebooks in the terminal

Machine Learning #

Obviously Tensorflow, PyTorch, Keras, etc. exist. This list is for the stuff you don’t already know about

That said, it’s worth noting that tensorflow-rocm exists, which might work for you if you have an AMD graphics card and don’t want to shell out for a different GPU just for CUDA support.

SpaCy - “Industrial-strength Natural Language Processing (NLP) in Python”

ELI5 - “A library for debugging/inspecting machine learning classifiers and explaining their predictions”

'$' family of stroke/gesture recognition tools

Kobra - “A visual programming language for machine learning (in beta)”

For Embedded Applications #

u8g2 - “Library for monochrome displays, version 2”

If you would like to support my development of OpGuides, please consider supporting me on Patreon or dropping me some spare change on Venmo @vegadeftwing - every little bit helps ❤️