Latest Tech News

Stay updated with the latest in technology, AI, cybersecurity, and more

Filtered by: zig Clear Filter

Automate compile_flags for C/C++ projects on the Zig build system

When using Zig’s build system for C/C++ projects, editors struggle to find include paths and provide proper code intelligence. compile_flagz solves this by automatically generating compile_flags.txt from your build.zig configuration. The Problem Recently I’ve been working on ROLLER, a decompilation project for the 1995 game, Fatal Racing (or Whiplash in NA). The game (known internally as Roller), is an early 3D game written in C with a bespoke engine. It also happens to be one of my favourite

Leak suggests new Philips Hue lights will have direct Matter support

There’s already been a number of leaks of upcoming Philips Hue products that are expected to be announced next week ahead of IFA. But one thing that hasn’t been mentioned was support for Matter-over-Thread. While there’s no confirmation that support is coming, there’s compelling evidence to suggest it might be. First off, packaging for two unannounced bulbs appeared on Amazon, with a Matter logo prominently displayed on the box. While Hue devices have been capable of connecting via Matter using

Bundesliga Soccer: Stream Bayern Munich vs. RB Leipzig Live for Free

The new Bundesliga season gets underway on Friday with a mouth-watering clash between defending champ Bayern Munich and RB Leipzig. Having won back the Meisterschale from Bayer Leverkusen in Vincent Kompany's first season in charge, Bayern comes into this season opener looking in good shape. Die Roten beat Stuttgart 2-1 in last Saturday's Franz Beckenbauer Supercup, with goals from new signing Luis Díaz and last season's top scorer Harry Kane. Leipzig, meanwhile, is looking to get off to a goo

We rewrote the Ghostty GTK application

August 14, 2025 We just completed rewriting the Ghostty GTK application fully embracing the GObject type system from Zig and also verifying with Valgrind every step of the way. The result is a more feature rich, stable, and maintainable Ghostty on Linux and BSD. There are multiple interesting, technical topics from this process, but I want to focus in on two (1) interfacing with the GObject type system from Zig and (2) verifying a GTK application with Valgrind and reflecting on the memory issu

We Rewrote the Ghostty GTK Application

August 14, 2025 We just completed rewriting the Ghostty GTK application fully embracing the GObject type system from Zig and also verifying with Valgrind every step of the way. The result is a more feature rich, stable, and maintainable Ghostty on Linux and BSD. There are multiple interesting, technical topics from this process, but I want to focus in on two (1) interfacing with the GObject type system from Zig and (2) verifying a GTK application with Valgrind and reflecting on the memory issu

Show HN: Zig-DbC – A design by contract library for Zig

Hi everyone, I've made an open-source library for using design by contract (DbC) principles in the Zig programming language. It's called Zig-DbC, and it currently provides the following features: - A simple API to define preconditions, postconditions, and invariants. - Contracts are active in `Debug`, `ReleaseSafe`, and `ReleaseSmall` modes to catch bugs early. - All checks are removed at compile time in `ReleaseFast` mode for zero performance cost. - An optional mode to handle partial sta

Faster substring search with SIMD in Zig

Faster substring search with SIMD in Zig I’ve been learning a lot about low-level programming languages lately, and for a long time there has been one thing that has interested me: SIMD (or ‘single instruction, multiple data’) code. I’ve seen a lot of articles about having massive performance gains by utilizing SIMD and wanted to learn how to do it myself. This article is a journey into implementing ~60% faster substring searching compared to Zig’s std.mem.indexOf using a SIMD-friendly algorit

Topics: 32 const needle simd zig

Zig Error Patterns

Some patterns I have started to use when writing zig code with unit tests. Introduction Although I try to make good use of the debugger, I am quite used to print-based debugging, especially for unit tests. I wanted to explore some tricks to improve print-based debugging, and also incorporate the debugger more. print-based debugging improved One big problem with using print debugging is spammy output. If I am running something in a loop, and only one iteration of the loop has anything interes

Zig-Error-Patterns

Some patterns I have started to use when writing zig code with unit tests. Introduction Although I try to make good use of the debugger, I am quite used to print-based debugging, especially for unit tests. I wanted to explore some tricks to improve print-based debugging, and also incorporate the debugger more. print-based debugging improved One big problem with using print debugging is spammy output. If I am running something in a loop, and only one iteration of the loop has anything interes

Zig Profiling on Apple Silicon

If you’re a developer rocking an Apple Silicon Mac and writing in Zig, congratulations - you’ve chosen the scenic route through the desert of profiling tools. It’s just you, your code, and a tumbleweed named Apple Instruments. But don’t worry - we’ll try to find some oases. Okay, it’s not that bad, but we’re far away from the rich ecosystem of profiling tools available on Linux. Note: I have limited experience using low-level languages, so this article doesn’t provide a deep dive into profili

Show HN: MCP server for up-to-date Zig standard library documentation

Zig Docs MCP Model Context Protocol (MCP) server that provides up-to-date documentation for the Zig programming language standard library and builtin functions. It uses the same approach as Zig's official autodoc (ziglang.org) by reading STD lib source files directly through a WASM module. However instead of returning HTML, it outputs Markdown which significantly reduces token usage. Tip Add use zigdocs to your prompt if you want to explicitly instruct the LLM to use Zig docs tools. Otherwise

New Aarch64 Back End

This page contains a curated list of recent changes to main branch Zig. Also available as an RSS feed. This page contains entries for the year 2025. Other years are available in the Devlog archive page. July 23, 2025 New Aarch64 Backend Author: Andrew Kelley & Jacob Young Jacob upstreamed his new backend yesterday. 275 src/codegen/aarch64/Mir.zig 138 src/codegen/aarch64/abi.zig 11799 src/codegen/aarch64/encoding.zig 10981 src/codegen/aarch64/Select.zig 905 src/codegen/aarch64/Disassemble.zig

My Lights Run on Bash

My Lights Run on Bash Among the many hobbies that modern nerds pick up, one has recently become incredibly popular: making everything in your house dangerously unreliable by inserting a bunch of software where previously simple wires had sufficed. In this post, I describe how I replaced the wires between my lights and my light switches with some Bash. Bash as critical infrastructure? Am I alright? Do I need to see a psychiatrist? These are all good questions, but let's leave them for another p

My Lights Run on Bash – Tomasz Kramkowski

My Lights Run on Bash Among the many hobbies that modern nerds pick up, one has recently become incredibly popular: making everything in your house dangerously unreliable by inserting a bunch of software where previously simple wires had sufficed. In this post, I describe how I replaced the wires between my lights and my light switches with some Bash. Bash as critical infrastructure? Am I alright? Do I need to see a psychiatrist? These are all good questions, but let's leave them for another p

Touring the Zig-EM code-scape (2024)

Touring the Zig•EM code-scape The next few blog posts will explore the Zig•EM programming framework in ever-greater detail – starting with instructions for installing the latest software version, and then moving on to a 10,000' overview that touches upon some core concepts and constructs of Zig•EM. Updating your installation The process for (initially) installing and (subsequently) updating your local version of Zig•EM boils down to three basic steps: install Zig clone zigem-dev execute zi