Graft - Stay local.

1 min read Original article ↗

Keep your editor, your dotfiles, your workflow.
Work with remote files and commands as if they were local.
Quick Start →

Install Graft

curl --proto '=https' --tlsv1.2 -sSf https://graft.run/install.sh | sh

See it in action

package main

import (
    "net/http"
    "runtime"
)

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

func handler(w http.ResponseWriter, r *http.Request) {
    if runtime.GOOS == "darwin" {
        w.Write([]byte("hello from darwin"))
    } else {
        w.Write([]byte("hello from linux"))
    }
}