---
# System prepended metadata

title: Zipper

---

# Zipper

## Todos -> 21 May, 2021

- [x] Prepare json format
### Prepare JSON (will be converted to struct)
**Compress :**
```
{
  "Compress": {
    "PathConfig": {
      "SourcePaths": [
        ""
      ],
      "Destination": {
        "PrefixDir": "",
        "OutputDir": ""
      }
    },
    "Options": {
      "CompressionLevel": 0,
      "Format": ""
    },
    "Overwrite": {
      "IsForceWrite": true,
      "IsSkipOnExistFiles": true
    },
    "RawConfig": {
      "IsContinueOnError": true,
      "IsSelectiveCompression ": true,
      "IsMkdirAll": true,
      "IsImplicitTopLevelFolder": true,
      "StripComponents": 0,
      "IsSingleThreadedCompress": true
    }
  }
}
```

**Uncompress**
```
{
  "Uncompress": {
    "PathConfig": {
      "SourcePath": "",
      "Destination": {
        "PrefixDir": "",
        "OutputDir": ""
      }
    },
    "IsClearDir": true,
    "Overwrite": {
      "IsForceWrite": true,
      "IsSkipOnExistFiles": true
    },
    "Options": {
      "Format": ""
    },
    "RawConfig": {
      "IsContinueOnError": true,
      "IsSelectiveCompression ": true,
      "IsMkdirAll": true,
      "IsImplicitTopLevelFolder": true,
      "StripComponents": 0,
      "IsSingleThreadedCompress": true
    }
  }
}
```


- [x] Study Archiver Package 
- [x] Priority Formats
```bash=
tar
tar.xz
tar.gz
tar.bz2
zip
7z (missing from archiver, least priority)
```

- [x] Plan Structure

- [x] Git Common Items
- [x] Start Developing / Implement at least ```archive``` and ```unarchive```

## Issues with archiver
- Rar has no archive
- Tar doesn't support compression level
- Tar.xz doesn't support compression level
- No support for ```7z```
