Skip to content

Commit 0753150

Browse files
feat: add more templates
1 parent 3c0e538 commit 0753150

7 files changed

Lines changed: 193 additions & 7 deletions

File tree

template/README.md

Lines changed: 67 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ Each template is defined in a JSON file with the following structure:
3434

3535
### Basic Information
3636
- **`name`**: Display name for the template (required)
37-
- **`description`**: Human-readable description of the template's purpose (required)
37+
- **`description`**: Human readable description of the template's purpose (required)
3838
- **`version`**: Template version (required)
3939
- **`author`**: Who created this template (required)
4040
- **`tags`**: Array of tags for categorization and filtering (optional)
@@ -53,7 +53,7 @@ Defines the default vault configuration that will be applied when using this tem
5353
- **`dedup_max_size`**: Maximum file size for deduplication (e.g., `"64MB"`)
5454
- **`dedup_gc_threshold`**: Garbage collection threshold (number)
5555
- **`dedup_index_enabled`**: Enable deduplication index (`true`/`false`)
56-
- **`dedup_cross_file`**: Allow cross-file deduplication (`true`/`false`)
56+
- **`dedup_cross_file`**: Allow cross file deduplication (`true`/`false`)
5757

5858
### Directory Structure (`directories`)
5959
Array of directories to create in the vault. These are created relative to the vault root:
@@ -225,10 +225,70 @@ Templates are validated when loaded. Common issues:
225225
6. **Version your templates**
226226
7. **Document any special requirements**
227227

228-
## Examples
228+
## Available Templates
229+
230+
### Photos and Media
231+
- **`photoVault`** - Photo storage with fixed chunking, strong dedup, high compression
232+
- **`videoVault`** - Video storage with larger chunks, lighter compression, tuned hashing
233+
- **`audioLibrary`** - Audio/podcast storage with balanced compression and indexing
234+
235+
### Documents and Knowledge
236+
- **`documentsVault`** - Office/PDF documents with higher compression, content-dedup, index enabled
237+
- **`codeVault`** - Code repositories/artifacts with fingerprint dedup, fast hashing, moderate chunks
238+
- **`reporterVault`** - Journalism/reporting with secure defaults, manual sync, metadata emphasis
239+
240+
### Backups and Archives
241+
- **`systemBackup`** - System backups with large chunks, parallel sync, conservative dedup
242+
- **`coldArchive`** - Long-term archival with maximum compression, minimal write amplification
243+
244+
## Template Comparison Matrix
245+
246+
| Template | Chunk Size | Compression | Hash | Dedup Min/Max | GC Threshold | Index | Cross File Dedup | Use Case |
247+
|----------|-----------|-------------|------|---------------|--------------|-------|------------------|----------|
248+
| **photoVault** | 8MB | gzip | sha256 | 1MB / 64MB | 500 ||| Photos, RAW images, high-res media |
249+
| **videoVault** | 32MB | lz4 | sha256 | 16MB / 256MB | 100 ||| Large video files, movies, recordings |
250+
| **audioLibrary** | 8MB | gzip | sha256 | 2MB / 128MB | 300 ||| Music, podcasts, audio collections |
251+
| **documentsVault** | 2MB | gzip | sha256 | 512KB / 32MB | 1500 ||| Office docs, PDFs, text files |
252+
| **codeVault** | 4MB | gzip | sha256 | 256KB / 16MB | 2000 ||| Source code, repos, build artifacts |
253+
| **reporterVault** | 4MB | gzip | sha256 | 1KB / 32MB | 1000 ||| Journalism, sensitive documents |
254+
| **systemBackup** | 16MB | lz4 | sha256 | 8MB / 128MB | 500 ||| Full system backups, disaster recovery |
255+
| **coldArchive** | 16MB | gzip | sha512 | 4MB / 256MB | 200 ||| Long term storage, archival data |
256+
257+
### Understanding the Settings
258+
259+
**Chunk Size:**
260+
- **Small (2-4MB)**: Better dedup, slower for large files → Documents, Code
261+
- **Medium (8MB)**: Balanced performance → Photos, Audio
262+
- **Large (16-32MB)**: Faster processing, less dedup overhead → Videos, Backups
263+
264+
**Compression:**
265+
- **gzip**: Higher compression ratio, slower → Documents, Photos, Archives
266+
- **lz4**: Faster compression, lower ratio → Videos, Backups
267+
- **none**: No compression overhead → Already compressed formats
268+
269+
**Hash Algorithm:**
270+
- **sha256**: Standard security, fast
271+
- **sha512**: Higher security, slightly slower → Cold Archives
272+
273+
**Deduplication:**
274+
- **Min/Max Size**: Range of chunk sizes eligible for dedup
275+
- **GC Threshold**: Number of unreferenced chunks before cleanup suggestion
276+
- **Index**: Enables faster chunk lookups (recommended: enabled)
277+
- **Cross File**: Dedup across different files (disable for independent files like videos)
278+
279+
**When to Choose Each Template:**
280+
281+
| If you're storing... | Use this template | Why |
282+
|---------------------|-------------------|-----|
283+
| Family photos, vacation pictures | `photoVault` | Optimized for JPEG/PNG with good dedup for similar images |
284+
| Movies, screen recordings | `videoVault` | Large chunks, fast compression, minimal dedup overhead |
285+
| Music library, podcasts | `audioLibrary` | Balanced for MP3/FLAC with moderate dedup |
286+
| Word docs, PDFs, spreadsheets | `documentsVault` | Aggressive compression + dedup for text content |
287+
| Git repos, npm packages | `codeVault` | Fine grained dedup for similar source files |
288+
| Sensitive documents, sources | `reporterVault` | Security focused with manual sync control |
289+
| Full system snapshots | `systemBackup` | Performance optimized for large backups |
290+
| Old files, compliance data | `coldArchive` | Maximum compression for rarely accessed data |
229291

230-
See the existing templates in this directory:
231-
- `photoVault.json` - Photo storage template
232-
- `reporterVault.json` - Reporting template
292+
## Examples
233293

234-
These serve as examples of how to structure your own templates.
294+
See the templates in this directory for reference implementations. Each template serves as an example of how to structure your own custom templates.

template/audioLibrary.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Audio Library",
3+
"description": "Balanced compression and indexing for audio files, podcasts, and music collections",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["audio", "music", "podcast", "media"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "8MB",
10+
"hash_algorithm": "sha256",
11+
"compression": "gzip",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "2MB",
16+
"dedup_max_size": "128MB",
17+
"dedup_gc_threshold": 300,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": true
20+
}
21+
}

template/codeVault.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Code Vault",
3+
"description": "Optimized for code repositories and build artifacts with fingerprint deduplication, fast hashing, and moderate chunk sizes",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["code", "source", "repository", "artifacts"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "4MB",
10+
"hash_algorithm": "sha256",
11+
"compression": "gzip",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "256KB",
16+
"dedup_max_size": "16MB",
17+
"dedup_gc_threshold": 2000,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": true
20+
}
21+
}

template/coldArchive.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Cold Archive",
3+
"description": "Optimized for long-term archival storage with maximum compression and minimal write amplification",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["archive", "cold-storage", "long-term", "compression"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "16MB",
10+
"hash_algorithm": "sha512",
11+
"compression": "gzip",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "4MB",
16+
"dedup_max_size": "256MB",
17+
"dedup_gc_threshold": 200,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": true
20+
}
21+
}

template/documentsVault.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Documents Vault",
3+
"description": "Optimized for Office documents and PDFs with high compression, content deduplication, and indexing enabled",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["documents", "office", "pdf", "text"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "2MB",
10+
"hash_algorithm": "sha256",
11+
"compression": "gzip",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "512KB",
16+
"dedup_max_size": "32MB",
17+
"dedup_gc_threshold": 1500,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": true
20+
}
21+
}

template/systemBackup.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "System Backup",
3+
"description": "Optimized for system backups with large chunks, parallel sync support, and conservative deduplication",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["backup", "system", "recovery", "disaster-recovery"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "16MB",
10+
"hash_algorithm": "sha256",
11+
"compression": "lz4",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "8MB",
16+
"dedup_max_size": "128MB",
17+
"dedup_gc_threshold": 500,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": true
20+
}
21+
}

template/videoVault.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "Video Vault",
3+
"description": "Optimized for video storage with large chunks, lighter compression, and tuned hashing for video files",
4+
"version": "1.0.0",
5+
"author": "Sietch Team",
6+
"tags": ["video", "media", "movies", "large-files"],
7+
"config": {
8+
"chunking_strategy": "fixed",
9+
"chunk_size": "32MB",
10+
"hash_algorithm": "sha256",
11+
"compression": "lz4",
12+
"sync_mode": "manual",
13+
"enable_dedup": true,
14+
"dedup_strategy": "content",
15+
"dedup_min_size": "16MB",
16+
"dedup_max_size": "256MB",
17+
"dedup_gc_threshold": 100,
18+
"dedup_index_enabled": true,
19+
"dedup_cross_file": false
20+
}
21+
}

0 commit comments

Comments
 (0)