Back to projects

Naht

Filesystem ↔ Roblox Studio sync in Rust

RustLuauSQLiteSvelte
naht.dev
Aperçu de Naht
Open site

About

A Rust filesystem-sync tool for Roblox Studio: it keeps your code on disk and your Studio session in lockstep in both directions at once, and when both sides change the same script it does a real 3-way merge instead of silently overwriting your work. A from-scratch alternative to Rojo and Argon, built around their failure modes.

Features

  • Bidirectional sync is the core design — a failed write pauses one path, never kills the session
  • Real 3-way merge with a persisted base; unmergeable conflicts get git-style markers and freeze the path until resolved
  • Last-sync state persisted to SQLite — restarts and reconnects re-diff safely instead of re-clobbering
  • Convention over configuration; naht init --from-rojo migrates an existing project
  • Unsyncable properties (CSG, terrain, MeshId…) are detected and reported, never silently dropped
  • Localhost daemon + MessagePack protocol, CLI, Luau Studio plugin
  • Animated Svelte documentation site; the Rust side is covered by tests

Tech Stack

Rust RustLuau LuauSQLite SQLiteSvelte Svelte