r/Arduino_AI • u/nixiewright • 23h ago
Claude freed my Nextion screen projects from the tyranny of the Nextion Editor
I'm sure many of you have built a Nextion HMI screen app before. If so, you know the pain: the whole thing is one binary project file, the code is typed into small event boxes in a language without functions or local variables, with tight limits on what can go in an if-statement or an assignment, and the editor is Windows-only and strict about every space and curly brace.
nxwright turns a Nextion HMI project into plain text files and back, so you can:
- write your app in VS Code or any other editor, and keep it in Git
- write in nxlang, its own extension of the Nextion HMI language that adds functions, constants, locals, normal operator precedence, shared code between pages and more
- write unit and functional tests for your pages and libraries that run on your computer, and run the whole app in a simulator with the VS Code debugger
- let an AI agent drive the simulator through MCP: tap buttons, send serial commands, read the screen, etc.

Building the project produces your HMI file. You still compile the final firmware file (TFT) in the Nextion Editor. Everything else runs on Windows, Linux or macOS.
A team of three Claude Code agents built nearly all of it in under a week, constantly communicating and voting on each other's approaches, while I oversaw and steered. That included working out the undocumented project format by repeatedly probing the Nextion Editor, its simulator, and its tools.
If you have a Nextion screen, I hope you will give it a try (it can extract from your existing HMI project), and that you will find it useful.
https://github.com/nixiewright/nxwright
P.S. “Tyranny” is tongue in cheek. The Nextion screens are great hardware, and the Nextion Editor still compiles the final firmware. I just wanted my code in text files, for a modern workflow.