archive/zip in the standard library reads and writes ZIP archives with stored and DEFLATE entries and ZIP64. A zip.Reader is an fs.FS, and Writer.AddFS adds a whole directory tree. It doesn’t support encryption; you can register other compressors (e.g. Zstandard from github.com/klauspost/compress) with RegisterCompressor and RegisterDecompressor.
archive/ziparchive/zip is Go's standard library package for ZIP archives. How to extract and create ZIP files, read one file, zip a directory with AddFS.