Library Usage

omnisrv is based on the fs.FS interface.

import "codeberg.org/NaitLee/omnisrv"

// Get a base FS
base := os.DirFS("/home/user/site")

// Wrap in OmniFS
site := omnisrv.NewOmniFS(base)

// zip your site pages!
w := zip.NewWriter(os.Stdout)
defer w.Close()
w.AddFS(site)

omnisrv programs: cmd/*/main.go

Use os.Root.FS instead of os.DirFS in production.

root, err := os.DirFS("/home/user/site")
if err != nil { return err }
defer root.Close()
site := omnisrv.NewOmniFS(root.FS())

See also: omnisrv/shared