Skip to main content

A penify cli tool to generate Documentation, Commit-summary.

Reason this release was yanked:

new product namespace

Project description

Penify CLI Tool

A CLI tool to generate Documentation, Commit-summary, and more.

Installation

Install from PyPI:

pip install penifycli

Usage

Penify CLI provides several subcommands for different functionalities:

Login

To log in and obtain an API token:

penifycli login

This command will open a browser window for authentication. After successful login, the API key will be saved locally for future use.

Install Git Hook

To install the Git post-commit hook:

penifycli install-hook -l /path/to/git/repo
  • -l, --location: The path to the Git repository where you want to install the hook.

Uninstall Git Hook

To uninstall the Git post-commit hook:

penifycli uninstall-hook -l /path/to/git/repo
  • -l, --location: The path to the Git repository from which you want to uninstall the hook.

Generate Documentation

To generate documentation for files or folders:

penifycli docgen [options]

Options:

  • -fl, --file_path: Path to a specific file for which to generate documentation.
  • -cf, --complete_folder_path: Path to a folder for which to generate documentation for all files.
  • -gf, --git_folder_path: Path to a Git repository to generate documentation for modified files. Defaults to the current directory.

Commit Code

To commit code with an automatically generated commit message:

penifycli commit -gf /path/to/git/repo [-m "Optional message"] [-e True/False]
  • -gf, --git_folder_path: Path to the Git repository. Defaults to the current directory.
  • -m, --message: Optional commit message. If not provided, a default message will be used.
  • -e, --terminal: Set to "True" to open the terminal for editing the commit message. Defaults to "False".

JIRA Integration

To integrate with JIRA and automate issue tracking:

penifycli jira [options]

Options:

  • -u, --url: JIRA instance URL.
  • -p, --project: JIRA project key.
  • -i, --issue: JIRA issue key.
  • -a, --assignee: Assignee for the JIRA issue.

Authentication

Penify CLI uses an API token for authentication. The token is obtained and used in the following priority:

  1. Command-line argument: -t or --token
  2. Environment variable: PENIFY_API_TOKEN
  3. Stored credentials: ~/.penify file (created after successful login)

If no token is available, you'll be prompted to log in or provide a token.

Environment Variables

  • PENIFY_API_TOKEN: You can set this environment variable with your API token to avoid passing it as an argument each time.

Development

To set up the development environment:

  1. Clone the repository:

    git clone https://github.com/SingularityX-ai/penify-cli.git
    
  2. Install the package in editable mode:

    pip install -e .
    

License

This project is licensed under the MIT License.

Author

Suman Saurabh (ss.sumansaurabh92@gmail.com)

Contributing

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

Issues

If you encounter any problems or have suggestions, please file an issue on the GitHub repository.

Support

For automated API Documentation, Architecture Documentation, Code Documentation, Pull Request Documentation, or if you need a demo, please join our Discord support channel.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

penifycli-0.2.0.tar.gz (22.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

penifycli-0.2.0-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file penifycli-0.2.0.tar.gz.

File metadata

  • Download URL: penifycli-0.2.0.tar.gz
  • Upload date:
  • Size: 22.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for penifycli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5842b95ce358fee7994510e99c46de692e57875fbf8241de2d9c429d7ddb0384
MD5 7e1bd2e78fee000e5ae6267a63113078
BLAKE2b-256 63077947319ca1fbc7369ef3c93c0e7fb0ce12bc1b2b64b1ab8752e6f889fd87

See more details on using hashes here.

File details

Details for the file penifycli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: penifycli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for penifycli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c4fb4108c946faedec910a0fc0de4ea47ad47f94ced5c17126424d2ebeba2e8e
MD5 0ee9e3adc9aee0397b7ad3ebaf061e7a
BLAKE2b-256 2e17b0e7a00b83040678b34cd602df95b016ce77c43de564401033d1666ee2ac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page