| Crates.io | sheafy |
| lib.rs | sheafy |
| version | 0.1.1 |
| created_at | 2025-04-14 07:59:52.390475+00 |
| updated_at | 2025-04-14 07:59:52.390475+00 |
| description | A command-line tool to bundle project files into a Markdown document and restore them. |
| homepage | |
| repository | https://github.com/pluveto/sheafy |
| max_upload_size | |
| id | 1632519 |
| size | 34,837 |
Sheafy is a command-line tool that bundles project files into a single Markdown document and can restore files from such bundles. It's particularly useful for sharing code with AI assistants or archiving projects in a readable format.
.gitignore rules by default (configurable)cargo install --path .
Create a bundle:
sheafy bundle -f rs,toml,md -o project_bundle.md
Restore files from a bundle:
sheafy restore project_bundle.md
Create a sheafy.toml file in your project root to customize behavior:
[sheafy]
filters = ["rs", "toml", "md"] # File extensions to include
bundle_name = "docs/project_bundle.md" # Output filename
use_gitignore = true # Whether to respect .gitignore rules
prologue = """
# Project Bundle
This is a bundle of all files in the project directory.
"""
epilogue = """
<!-- End of Project Bundle -->
"""
USAGE:
sheafy bundle [OPTIONS]
OPTIONS:
-f, --filters <FILTERS>... Comma-separated list of file extensions to include
-o, --output <OUTPUT> Output Markdown filename
--use-gitignore Force use of .gitignore rules
--no-gitignore Force disabling .gitignore rules
USAGE:
sheafy restore <INPUT_FILE>
ARGS:
<INPUT_FILE> The Markdown file to restore from
Bundle only Rust and Markdown files:
sheafy bundle -f rs,md
Bundle with custom output name:
sheafy bundle -f py -o python_files.md
Restore files overwriting existing ones:
sheafy restore backup_2023-12-01.md
See LICENSE for more information.