diff --git a/fs.go b/fs.go
index 6750a93..4d4b886 100644
--- a/fs.go
+++ b/fs.go
@@ -1,3 +1,5 @@
+//go:build !windows
+
 package main
 
 import (
diff --git a/fs_windows.go b/fs_windows.go
new file mode 100644
index 0000000..60f98d6
--- /dev/null
+++ b/fs_windows.go
@@ -0,0 +1,20 @@
+//go:build windows
+
+package main
+
+import (
+	"context"
+	"fmt"
+
+	"github.com/urfave/cli/v3"
+)
+
+var fsCmd = &cli.Command{
+	Name:                      "fs",
+	Usage:                     "mount a FUSE filesystem that exposes Nostr events as files.",
+	Description:               `doesn't work on Windows.`,
+	DisableSliceFlagSeparator: true,
+	Action: func(ctx context.Context, c *cli.Command) error {
+		return fmt.Errorf("this doesn't work on Windows.")
+	},
+}