giftwrapy


Namegiftwrapy JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
SummaryA tool to convert a project/folder/repo into one long markdown file for use with AI assistants
upload_time2024-08-23 17:17:11
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # giftwrapy

giftwrapy (pronounced "gift-wrap-ee") is a Python tool that converts a project, folder, or repository into a single long markdown file. This is particularly useful for use with AI assistants, allowing you to easily share the structure and contents of your project.

## Features

- Generates a tree structure of your project
- Includes file contents for specified extensions
- Allows ignoring specific directories and files
- Customizable output file name
- No dependencies outside of the Python standard library

## Installation

You can install giftwrapy using pip:

```bash
pip install giftwrapy
```

## Usage

After installation, you can use giftwrapy from the command line:

```bash
giftwrapy /path/to/your/project
```

For more options:

```bash
giftwrapy --help
```

### Basic Usage Example

```python
from giftwrapy import dir_to_markdown

dir_to_markdown(
    directory=".",
    extensions=[".py", ".html", ".sql", ".css", ".md"],
    output_file="project_contents.md",
)
```

### Command Line Options

- `directory`: The path to the directory to convert.
- `--extensions`: List of file extensions to include (default: [".py", ".html", ".sql", ".css", ".md"]).
- `--ignore-dirs`: List of directory names or patterns to ignore.
- `--ignore-files`: List of file names or patterns to ignore.
- `--use-default-ignore-pats`: Whether to use the default ignore patterns (default: True).
- `--output`: Name of the output markdown file (default: "project_contents.md").

## Default Ignore Patterns

giftwrapy uses default ignore patterns for both the tree structure and file contents. These include common directories and files like `__pycache__`, `.git`, `.vscode`, and others. You can add to these patterns using the `--ignore-dirs` and `--ignore-files` options.

## Using with AI Assistants

giftwrapy is designed to make it easy to share your project structure and contents with AI assistants. Here's an example of how the output can be used:

![Example usage with an AI assistant](usage.png)

This screenshot demonstrates how the markdown file generated by giftwrapy can be used in a conversation with an AI assistant, allowing for more context-aware and project-specific interactions.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

This project is licensed under the MIT License - see the LICENSE file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "giftwrapy",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "Jackson Walker <jacksonrgwalker@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/5d/3f/1a9937a89cf5566e54b39b9f38c9e991840e6a4ccbf63a6abb660ac09d55/giftwrapy-0.3.0.tar.gz",
    "platform": null,
    "description": "# giftwrapy\n\ngiftwrapy (pronounced \"gift-wrap-ee\") is a Python tool that converts a project, folder, or repository into a single long markdown file. This is particularly useful for use with AI assistants, allowing you to easily share the structure and contents of your project.\n\n## Features\n\n- Generates a tree structure of your project\n- Includes file contents for specified extensions\n- Allows ignoring specific directories and files\n- Customizable output file name\n- No dependencies outside of the Python standard library\n\n## Installation\n\nYou can install giftwrapy using pip:\n\n```bash\npip install giftwrapy\n```\n\n## Usage\n\nAfter installation, you can use giftwrapy from the command line:\n\n```bash\ngiftwrapy /path/to/your/project\n```\n\nFor more options:\n\n```bash\ngiftwrapy --help\n```\n\n### Basic Usage Example\n\n```python\nfrom giftwrapy import dir_to_markdown\n\ndir_to_markdown(\n    directory=\".\",\n    extensions=[\".py\", \".html\", \".sql\", \".css\", \".md\"],\n    output_file=\"project_contents.md\",\n)\n```\n\n### Command Line Options\n\n- `directory`: The path to the directory to convert.\n- `--extensions`: List of file extensions to include (default: [\".py\", \".html\", \".sql\", \".css\", \".md\"]).\n- `--ignore-dirs`: List of directory names or patterns to ignore.\n- `--ignore-files`: List of file names or patterns to ignore.\n- `--use-default-ignore-pats`: Whether to use the default ignore patterns (default: True).\n- `--output`: Name of the output markdown file (default: \"project_contents.md\").\n\n## Default Ignore Patterns\n\ngiftwrapy uses default ignore patterns for both the tree structure and file contents. These include common directories and files like `__pycache__`, `.git`, `.vscode`, and others. You can add to these patterns using the `--ignore-dirs` and `--ignore-files` options.\n\n## Using with AI Assistants\n\ngiftwrapy is designed to make it easy to share your project structure and contents with AI assistants. Here's an example of how the output can be used:\n\n![Example usage with an AI assistant](usage.png)\n\nThis screenshot demonstrates how the markdown file generated by giftwrapy can be used in a conversation with an AI assistant, allowing for more context-aware and project-specific interactions.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A tool to convert a project/folder/repo into one long markdown file for use with AI assistants",
    "version": "0.3.0",
    "project_urls": {
        "Homepage": "https://github.com/jacksonrgwalker/giftwrapy"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "29bb56152fce4fd77750f580d0a1189f45b56dfe9d73288547cb1e7565e3766f",
                "md5": "f688f10a741bfba4b2f1c9cec7b1857c",
                "sha256": "ba59f24de6358da8ec2f1cb0cba5c2aad2614e4626e7db82b98da8e98ad54bf3"
            },
            "downloads": -1,
            "filename": "giftwrapy-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f688f10a741bfba4b2f1c9cec7b1857c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 5352,
            "upload_time": "2024-08-23T17:17:09",
            "upload_time_iso_8601": "2024-08-23T17:17:09.412849Z",
            "url": "https://files.pythonhosted.org/packages/29/bb/56152fce4fd77750f580d0a1189f45b56dfe9d73288547cb1e7565e3766f/giftwrapy-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5d3f1a9937a89cf5566e54b39b9f38c9e991840e6a4ccbf63a6abb660ac09d55",
                "md5": "5d41009dfc695a843ed456bf38cbdae9",
                "sha256": "62ab978439000c76c6b920759244130733ce1d9fd1afadac4466b27ac974a5e7"
            },
            "downloads": -1,
            "filename": "giftwrapy-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "5d41009dfc695a843ed456bf38cbdae9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 112061,
            "upload_time": "2024-08-23T17:17:11",
            "upload_time_iso_8601": "2024-08-23T17:17:11.868854Z",
            "url": "https://files.pythonhosted.org/packages/5d/3f/1a9937a89cf5566e54b39b9f38c9e991840e6a4ccbf63a6abb660ac09d55/giftwrapy-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-23 17:17:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jacksonrgwalker",
    "github_project": "giftwrapy",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "giftwrapy"
}
        
Elapsed time: 0.31986s