or: Simplified QMK Uniquely Immaculate (and) Readable Runtime Editable Library
🚧 This project is currently under construction, so do not expect a usable result yet! 🚧
- Create an easy to understand and simple keyboard library that allows for runtime layout and configuration edits.
- Make sure it is as documented and clearly organised as possible.
- Keep it independent of any microcontroller.
For an example implementation of SQUIRREL, see the SQUIRREL-pico example template.
SQUIRREL uses nix.
To develop, run the nix shell using nix develop
. SQUIRREL can also be built using nix build
.
Directory: ./build
Builds a static archive library (.a
).
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j4
Directory: ./build
Builds the library with debug build type.
cmake -DCMAKE_BUILD_TYPE=Debug ..
make -j4
cp compile_commands.json ../ # Copies the autocomplete information for ccls.
Directory: ./build
Tests the library
cmake -DCMAKE_BUILD_TYPE=Testing ..
make -j4
ctest -T Test -T Coverage .
Cleans the build directory for a fresh build.
rm -rf ./build
mkdir build
Directory: ./build
Runs the unit tests.
cmake -S. -DBUILD_TESTING=true ..
cmake --build .
ctest