56,966 blogs · [ { "id": "01a087b0-ceff-71e5-b9f5-abb34aae2f67", "title": "Terminal Graphics Protocol for fast embedded development", "url": "https://nmattia.com/posts/2026-03-10-kitty-graphics-micropython/", "published_at": "2026-03-10T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34ac49b91", "title": "Accessing LUKS and ext4 drives from macOS", "url": "https://nmattia.com/posts/2026-01-13-using-luks-on-macos/", "published_at": "2026-01-13T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34af65065", "title": "build.log#1 - Printing labels via SSH with Raspberry Pi Zero and Nix", "url": "https://nmattia.com/posts/2025-08-28-label-printer-rpi-nix/", "published_at": "2025-08-28T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34b98bc42", "title": "Interactive WebGL Tutorial: Recreating an iOS Animation with GLSL", "url": "https://nmattia.com/posts/2025-05-07-airpods-hearing-test-animation/", "published_at": "2025-05-07T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34c1a7d2e", "title": "SKÅPA, a parametric 3D printing app like an IKEA manual", "url": "https://nmattia.com/posts/2025-03-24-skapa-intro/", "published_at": "2025-03-24T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34c8ad71c", "title": "How to Secure PrusaLink (or any Raspberry Pi web service) with HTTPS", "url": "https://nmattia.com/posts/2025-02-17-raspberry-pi-prusalink-https/", "published_at": "2025-02-17T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34d808040", "title": "How to Set WebGL Shader Colors with CSS and JavaScript", "url": "https://nmattia.com/posts/2025-01-29-shader-css-properties/", "published_at": "2025-01-29T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34da23cba", "title": "Automatic tag-based article suggestions for blogs and Astro websites", "url": "https://nmattia.com/posts/2023-02-25-astro-suggestions/", "published_at": "2023-02-25T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34dd2b184", "title": "Intro to building GCC and some other GNU projects (focus on macOS & Apple Silicon)", "url": "https://nmattia.com/posts/2023-01-09-introduction-build-gcc-gnu/", "published_at": "2023-01-09T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34e96d757", "title": "Lockfile trick: Package an npm project with Nix in 20 lines", "url": "https://nmattia.com/posts/2022-12-18-lockfile-trick-package-npm-project-with-nix/", "published_at": "2022-12-18T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34f0aa3bb", "title": "Keep your Mac awake with caffeinate", "url": "https://nmattia.com/posts/2022-07-12-keep-you-mac-awake-with-caffeinate/", "published_at": "2022-07-12T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34f1e1ed2", "title": "Dragging, Resizing and Rotating HTML elements: Fun with Web Components and Math", "url": "https://nmattia.com/posts/2020-03-03-drag-resize-rotate/", "published_at": "2020-03-03T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34f79b755", "title": "Recovering Nix derivation attributes of runtime dependencies", "url": "https://nmattia.com/posts/2019-10-08-runtime-dependencies/", "published_at": "2019-10-08T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb34fdc47f4", "title": "Triggered CI Builds: Automatically Update your Project's Dependencies", "url": "https://nmattia.com/posts/2019-09-10-autoupdate/", "published_at": "2019-09-10T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3505b3621", "title": "The 5 Raisons d'Être of Testing", "url": "https://nmattia.com/posts/2019-01-22-the-5-raisons-detre-of-testing/", "published_at": "2019-01-22T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb351097853", "title": "Easy Peasy Nix Versions", "url": "https://nmattia.com/posts/2019-01-15-easy-peasy-nix-versions/", "published_at": "2019-01-15T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3515fa083", "title": "Hunt bugs down before they are merged!", "url": "https://nmattia.com/posts/2019-01-08-hunt-bugs-down-before-they-are-merged/", "published_at": "2019-01-08T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb35232a621", "title": "cio: cached HTTP requests for a smooth Jupyter experience!", "url": "https://nmattia.com/posts/2018-08-21-cio-cached-http-requests-jupyter/", "published_at": "2018-08-21T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3526ac70f", "title": "Automatically generated directories for individual tasty tests", "url": "https://nmattia.com/posts/2018-04-30-tasty-test-names/", "published_at": "2018-04-30T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3532dbd42", "title": "Nix: A Reproducible Setup for Linux and macOS", "url": "https://nmattia.com/posts/2018-03-21-nix-reproducible-setup-linux-macos/", "published_at": "2018-03-21T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb353677f4d", "title": "A Fully Functional, Fully Functional Webapp", "url": "https://nmattia.com/posts/2017-09-07-fully-functional-webapp/", "published_at": "2017-09-07T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb35445a385", "title": "Stutter: the anti-grep", "url": "https://nmattia.com/posts/2017-05-01-release-stutter/", "published_at": "2017-05-01T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3544d98b6", "title": "Haskell makefile library", "url": "https://nmattia.com/posts/2017-04-29-haskell-makefile-release/", "published_at": "2017-04-29T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb354d58976", "title": "Recovering forgotten passwords with stutter and GNU parallel", "url": "https://nmattia.com/posts/2017-03-05-crack-luks-stutter-gnu-parallel/", "published_at": "2017-03-05T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb354f03ac3", "title": "Lens and Linear, 2048's logic in 22 lines", "url": "https://nmattia.com/posts/2016-08-19-lens-linear-2048/", "published_at": "2016-08-19T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb355807a23", "title": "Puzzle solving in Haskell", "url": "https://nmattia.com/posts/2016-07-31-bfs-tree/", "published_at": "2016-07-31T00:00:00+00:00" }, { "id": "01a087b0-ceff-71e5-b9f5-abb3565fa903", "title": "Parallel Computing with DNA", "url": "https://nmattia.com/posts/2015-04-20-parallel-dna/", "published_at": "2015-04-20T00:00:00+00:00" } ] posts Claim your blog
Back to Nicolas Mattia
Blog · corpus.blog/blogs/nmattia.com/posts

Nicolas Mattia

nmattia.com

2026

2025

2023

2022

2020

2019

2018

2017

2016

2015