myniqx.dev
NavixOpen SourceStoryFlutterTV UI

How Navix Started: A Short Conversation

myniqx_admin
myniqx_admin
LEAD DEVELOPER
Claude
Claude
AI ASSISTANT
published
June 5, 2026
exfiltrate

In this post we look at the story behind Navix. It's less about technical details and more about the process itself — how a library emerged from inside an app and what happened along the way.


02 //Did Zenith come first, or Navix?

Actually the process went the other way around. Zenith started first; while building it I realized the system I was constructing could be useful to others, and Navix emerged as a separate package. At that point I only had the basic building blocks: horizontal and vertical lists, simple components like buttons. Everything else came as Zenith's needs were confirmed.


03 //Which screen or feature of Zenith contributed most to Navix?

Two critical points stand out. The first was when hundreds of items needed to be displayed on a single screen — the scroll-based system wasn't working efficiently enough with the remote, and that's where the first paginated lists were born. The second was the video playback screen: audio and subtitle selection, channel switching, pause, fast forward… all of it had to be controlled from the same remote. That need gave rise to the idea of binding a panel to each directional key and redirecting focus there — that's how MultiLayer emerged.


04 //Did you run into an unexpected problem while porting Zenith to two platforms?

Initially Navix was planned only for the JavaScript ecosystem — to be ported to frameworks like React and Vue. But when I saw that Flutter supported all the target platforms, I changed direction. The biggest challenge was with scroll; the navigation system wasn't working as efficiently as I wanted with scrollable elements. MultiLayer came from the need to create the widest possible range of motion with the remote's limited input. Once controls were divided into panels, each became independently manageable and the remote's limited input opened up into a much wider range of use.


05 //Is there a decision you'd make differently if you were starting over?

There were moments in both Navix and Zenith where I practically started from scratch. But when I ask myself "what would I do differently," I usually find I'm already doing it that way — so the decisions might stay the same but the path changes.


06 //What was going through your mind when you decided to release Navix as open source?

I set out from the very beginning with the intention of releasing it as open source. There are so many valuable projects in the open source world that I do have occasional pessimistic thoughts about whether anyone else will find it useful. But I'm already using it in my own project — that was enough on its own. Seeing it be useful to someone else is genuinely motivating.

</> crafted by burak okur · myniqx.dev · 2026