56,966 blogs · [ { "id": "01a0878f-a102-7007-a658-f5affcae175e", "title": "Making a Type Checker/LSP for Nix", "url": "https://johns.codes/blog/making-a-type-checker-lsp-for-nix", "published_at": "2026-04-03T00:00:00+00:00" }, { "id": "01a0878f-a102-7007-a658-f5affcce5ada", "title": "Advent Of Code 2024 in Nix - Days 04-06", "url": "https://johns.codes/blog/aoc2024/nix/part02", "published_at": "2024-12-09T04:27:04+00:00" }, { "id": "01a0878f-a102-7007-a658-f5affd4de06e", "title": "Advent Of Code 2024 in Nix - Days 01-03", "url": "https://johns.codes/blog/aoc2024/nix/part01", "published_at": "2024-12-05T14:11:26+00:00" }, { "id": "01a0878f-a102-7007-a658-f5affddfb8dc", "title": "Making a Chess Engine in Zig", "url": "https://johns.codes/blog/making-a-chess-engine-in-zig", "published_at": "2024-08-18T21:17:20+00:00" }, { "id": "01a0878f-a102-7007-a658-f5affe8f1aa1", "title": "Efficient Nix Derivations with File Sets", "url": "https://johns.codes/blog/efficient-nix-derivations-with-file-sets", "published_at": "2023-12-02T21:22:44+00:00" }, { "id": "01a0878f-a102-7007-a658-f5affeefe412", "title": "Organizing system configs with NixOS", "url": "https://johns.codes/blog/organizing-system-configs-with-nixos", "published_at": "2023-10-09T07:14:19+00:00" }, { "id": "01a0878f-a102-7007-a658-f5afff504cc5", "title": "Exposing a Rust Library to Node with Napi-rs", "url": "https://johns.codes/blog/exposing-a-rust-library-to-node-with-napirs", "published_at": "2023-05-01T17:21:59+00:00" }, { "id": "01a0878f-a102-7007-a658-f5afffaeb188", "title": "Building a Simple DB in Rust - Part 3 - Less Basic Execution", "url": "https://johns.codes/blog/build-a-db/part03", "published_at": "2023-04-04T00:01:55+00:00" }, { "id": "01a0878f-a102-7007-a658-f5afffd04463", "title": "Building a Simple DB in Rust - Part 2 - Basic Execution", "url": "https://johns.codes/blog/build-a-db/part02", "published_at": "2023-01-23T14:01:22+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b000bea941", "title": "Building a Simple DB in Rust - Part 1 - Parsing", "url": "https://johns.codes/blog/build-a-db/part01", "published_at": "2023-01-02T05:19:22+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b0016dbddc", "title": "Building Typescript Node Apps With Nix", "url": "https://johns.codes/blog/building-typescript-node-apps-with-nix", "published_at": "2022-09-06T23:57:55+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b001e821cc", "title": "Making a PR to Nixpkgs", "url": "https://johns.codes/blog/updating-a-package-in-nixpkgs", "published_at": "2022-08-02T03:43:05+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b002030907", "title": "Type Safe GroupBy In TypeScript", "url": "https://johns.codes/blog/type-safe-groupby-in-typescript", "published_at": "2022-05-25T00:00:00+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b00289c241", "title": "Rust Environment and Docker Build with Nix Flakes", "url": "https://johns.codes/blog/rust-enviorment-and-docker-build-with-nix-flakes", "published_at": "2022-05-19T00:00:00+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b002fbe5a1", "title": "Intermediate Typescript: Generics and Mapped Types", "url": "https://johns.codes/blog/intermediate-typescript-generics-and-mapped-types", "published_at": "2022-01-31T00:00:00+00:00" }, { "id": "01a0878f-a102-7007-a658-f5b003a69a1f", "title": "Intermediate Typescript: Literals and Unions", "url": "https://johns.codes/blog/intermediate-typescript", "published_at": "2022-01-25T00:00:00+00:00" } ] posts Claim your blog
Back to johns.codes
Blog · corpus.blog/blogs/johns.codes/posts

johns.codes

johns.codes

2026

2024

2023

2022