wolfsoftware.baseline-package-importable


Namewolfsoftware.baseline-package-importable JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/GitHubToolbox/baseline-package-importable
SummaryA basic package template for importable packages.
upload_time2024-05-25 20:33:55
maintainerNone
docs_urlNone
authorWolf Software
requires_python>=3.9
licenseMIT
keywords python template
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!-- markdownlint-disable -->
<p align="center">
    <a href="https://github.com/GreyTeamToolbox/">
        <img src="https://cdn.wolfsoftware.com/assets/images/github/organisations/greyteamtoolbox/black-and-white-circle-256.png" alt="GreyTeamToolbox logo" />
    </a>
    <br />
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/actions/workflows/cicd.yml">
        <img src="https://img.shields.io/github/actions/workflow/status/GreyTeamToolbox/baseline-package-importable/cicd.yml?branch=master&label=build%20status&style=for-the-badge" alt="Github Build Status" />
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/LICENSE.md">
        <img src="https://img.shields.io/github/license/GreyTeamToolbox/baseline-package-importable?color=blue&label=License&style=for-the-badge" alt="License">
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable">
        <img src="https://img.shields.io/github/created-at/GreyTeamToolbox/baseline-package-importable?color=blue&label=Created&style=for-the-badge" alt="Created">
    </a>
    <br />
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest">
        <img src="https://img.shields.io/github/v/release/GreyTeamToolbox/baseline-package-importable?color=blue&label=Latest%20Release&style=for-the-badge" alt="Release">
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest">
        <img src="https://img.shields.io/github/release-date/GreyTeamToolbox/baseline-package-importable?color=blue&label=Released&style=for-the-badge" alt="Released">
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest">
        <img src="https://img.shields.io/github/commits-since/GreyTeamToolbox/baseline-package-importable/latest.svg?color=blue&style=for-the-badge" alt="Commits since release">
    </a>
    <br />
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/CODE_OF_CONDUCT.md">
        <img src="https://img.shields.io/badge/Code%20of%20Conduct-blue?style=for-the-badge" />
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/CONTRIBUTING.md">
        <img src="https://img.shields.io/badge/Contributing-blue?style=for-the-badge" />
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/SECURITY.md">
        <img src="https://img.shields.io/badge/Report%20Security%20Concern-blue?style=for-the-badge" />
    </a>
    <a href="https://github.com/GreyTeamToolbox/baseline-package-importable/issues">
        <img src="https://img.shields.io/badge/Get%20Support-blue?style=for-the-badge" />
    </a>
</p>

## Overview

## Overview

This is the baseline package template that we use internally when creating new python based tools for the [Blue Team Toolbox](https://github.com/BlueTeamToolbox)
and [Red Team Toolbox](https://github.com/RedTeamToolbox). It has all of the basic functionality and workflows needed to create,
build and publish new package to [PyPI](https://pypi.org/).

This package template does NOT provide any cli functionality but instead is designed for creating importable packages.

If you are looking for a template to use for creating cli based tools we provide one of those too. [baseline package cli](https://github.com/GreyTeamToolbox/baseline-package-cli).

We decided to make this available along with our other tools to allow people to use a well engineered starting point when creating their own tools.

We also have a [baseline project](https://github.com/GreyTeamToolbox/baseline-project) which can be used to create scripts and tools for local
execution. It comes with all the same base functionality but without the package build and publish.

## Features

- **Modular Architecture**: Organize your code into modules for better maintainability.
- **Custom Exceptions**: BAsic examples for implementing custom exceptions for specific error handling.
- **Testing Examples**: Basic examples for writing pytest tests for your package.

## Installation

To install the Baseline Package, clone the repository and navigate to the project directory:

```bash
git clone https://github.com/GreyTeamToolbox/baseline-package-importable.git
cd baseline-package-importable
```

It is recommended to use a virtual environment to manage dependencies. You can create and activate a virtual environment using the following commands:

```bash
python -m venv venv
source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
```

Install the required dependencies:

```bash
pip install -r requirements.txt
```

## Project Structure

The project is organized as follows:

```sh
baseline-package-importable/
├── wolfsoftware/
│   └── baseline_package_importable/
│       ├── __init__.py
│       ├── exceptions.py
│       └── functions.py
├── tests/
│   ├── __init__.py
│   └── test_baseline_package_importable.py
├── README.md
├── setup.py
└── requirements.txt
```

- `wolfsoftware/baseline_package_importable`: Contains the core modules of the application.
  - `exceptions.py`: Handles custom exceptions.
  - `functions.py`: Defines some example functions (for testing).
- `tests`: Where the pytest tests are located.
  - `test_baseline_package_importable.py`: The specific tests to run.
- `setup.py`: The package configuration.
- `requirements.txt`: Lists the dependencies required for the project.
- `README.md`: The file you are currently reading.

<br />
<p align="right"><a href="https://wolfsoftware.com/"><img src="https://img.shields.io/badge/Created%20by%20Wolf%20on%20behalf%20of%20Wolf%20Software-blue?style=for-the-badge" /></a></p>

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/GitHubToolbox/baseline-package-importable",
    "name": "wolfsoftware.baseline-package-importable",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "python, template",
    "author": "Wolf Software",
    "author_email": "pypi@wolfsoftware.com",
    "download_url": "https://files.pythonhosted.org/packages/11/51/53e6b4ab11e12af587ff95859ebe0d78762a5b0a0a48c7408ba7d16257fc/wolfsoftware_baseline_package_importable-0.1.0.tar.gz",
    "platform": null,
    "description": "<!-- markdownlint-disable -->\n<p align=\"center\">\n    <a href=\"https://github.com/GreyTeamToolbox/\">\n        <img src=\"https://cdn.wolfsoftware.com/assets/images/github/organisations/greyteamtoolbox/black-and-white-circle-256.png\" alt=\"GreyTeamToolbox logo\" />\n    </a>\n    <br />\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/actions/workflows/cicd.yml\">\n        <img src=\"https://img.shields.io/github/actions/workflow/status/GreyTeamToolbox/baseline-package-importable/cicd.yml?branch=master&label=build%20status&style=for-the-badge\" alt=\"Github Build Status\" />\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/LICENSE.md\">\n        <img src=\"https://img.shields.io/github/license/GreyTeamToolbox/baseline-package-importable?color=blue&label=License&style=for-the-badge\" alt=\"License\">\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable\">\n        <img src=\"https://img.shields.io/github/created-at/GreyTeamToolbox/baseline-package-importable?color=blue&label=Created&style=for-the-badge\" alt=\"Created\">\n    </a>\n    <br />\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest\">\n        <img src=\"https://img.shields.io/github/v/release/GreyTeamToolbox/baseline-package-importable?color=blue&label=Latest%20Release&style=for-the-badge\" alt=\"Release\">\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest\">\n        <img src=\"https://img.shields.io/github/release-date/GreyTeamToolbox/baseline-package-importable?color=blue&label=Released&style=for-the-badge\" alt=\"Released\">\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/releases/latest\">\n        <img src=\"https://img.shields.io/github/commits-since/GreyTeamToolbox/baseline-package-importable/latest.svg?color=blue&style=for-the-badge\" alt=\"Commits since release\">\n    </a>\n    <br />\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/CODE_OF_CONDUCT.md\">\n        <img src=\"https://img.shields.io/badge/Code%20of%20Conduct-blue?style=for-the-badge\" />\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/CONTRIBUTING.md\">\n        <img src=\"https://img.shields.io/badge/Contributing-blue?style=for-the-badge\" />\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/blob/master/.github/SECURITY.md\">\n        <img src=\"https://img.shields.io/badge/Report%20Security%20Concern-blue?style=for-the-badge\" />\n    </a>\n    <a href=\"https://github.com/GreyTeamToolbox/baseline-package-importable/issues\">\n        <img src=\"https://img.shields.io/badge/Get%20Support-blue?style=for-the-badge\" />\n    </a>\n</p>\n\n## Overview\n\n## Overview\n\nThis is the baseline package template that we use internally when creating new python based tools for the [Blue Team Toolbox](https://github.com/BlueTeamToolbox)\nand [Red Team Toolbox](https://github.com/RedTeamToolbox). It has all of the basic functionality and workflows needed to create,\nbuild and publish new package to [PyPI](https://pypi.org/).\n\nThis package template does NOT provide any cli functionality but instead is designed for creating importable packages.\n\nIf you are looking for a template to use for creating cli based tools we provide one of those too. [baseline package cli](https://github.com/GreyTeamToolbox/baseline-package-cli).\n\nWe decided to make this available along with our other tools to allow people to use a well engineered starting point when creating their own tools.\n\nWe also have a [baseline project](https://github.com/GreyTeamToolbox/baseline-project) which can be used to create scripts and tools for local\nexecution. It comes with all the same base functionality but without the package build and publish.\n\n## Features\n\n- **Modular Architecture**: Organize your code into modules for better maintainability.\n- **Custom Exceptions**: BAsic examples for implementing custom exceptions for specific error handling.\n- **Testing Examples**: Basic examples for writing pytest tests for your package.\n\n## Installation\n\nTo install the Baseline Package, clone the repository and navigate to the project directory:\n\n```bash\ngit clone https://github.com/GreyTeamToolbox/baseline-package-importable.git\ncd baseline-package-importable\n```\n\nIt is recommended to use a virtual environment to manage dependencies. You can create and activate a virtual environment using the following commands:\n\n```bash\npython -m venv venv\nsource venv/bin/activate  # On Windows, use `venv\\Scripts\\activate`\n```\n\nInstall the required dependencies:\n\n```bash\npip install -r requirements.txt\n```\n\n## Project Structure\n\nThe project is organized as follows:\n\n```sh\nbaseline-package-importable/\n\u251c\u2500\u2500 wolfsoftware/\n\u2502   \u2514\u2500\u2500 baseline_package_importable/\n\u2502       \u251c\u2500\u2500 __init__.py\n\u2502       \u251c\u2500\u2500 exceptions.py\n\u2502       \u2514\u2500\u2500 functions.py\n\u251c\u2500\u2500 tests/\n\u2502   \u251c\u2500\u2500 __init__.py\n\u2502   \u2514\u2500\u2500 test_baseline_package_importable.py\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 setup.py\n\u2514\u2500\u2500 requirements.txt\n```\n\n- `wolfsoftware/baseline_package_importable`: Contains the core modules of the application.\n  - `exceptions.py`: Handles custom exceptions.\n  - `functions.py`: Defines some example functions (for testing).\n- `tests`: Where the pytest tests are located.\n  - `test_baseline_package_importable.py`: The specific tests to run.\n- `setup.py`: The package configuration.\n- `requirements.txt`: Lists the dependencies required for the project.\n- `README.md`: The file you are currently reading.\n\n<br />\n<p align=\"right\"><a href=\"https://wolfsoftware.com/\"><img src=\"https://img.shields.io/badge/Created%20by%20Wolf%20on%20behalf%20of%20Wolf%20Software-blue?style=for-the-badge\" /></a></p>\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A basic package template for importable packages.",
    "version": "0.1.0",
    "project_urls": {
        "Documentation": "https://github.com/GitHubToolbox/baseline-package-importable",
        "Homepage": "https://github.com/GitHubToolbox/baseline-package-importable",
        "Source": "https://github.com/GitHubToolbox/baseline-package-importable",
        "Sponsor": "https://github.com/sponsors/WolfSoftware",
        "Tracker": "https://github.com/GitHubToolbox/baseline-package-importable/issues/"
    },
    "split_keywords": [
        "python",
        " template"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "56b0b291468a837cb1b509b8206fb6eef070e78c1465c876b180f1c252710b67",
                "md5": "db2e8f4187ab72ee7ba28c91469c55bd",
                "sha256": "e065edb600b7f0d42e59b71a3cb2e7d691d627b1fedf9fc8f0933f60ed688ef0"
            },
            "downloads": -1,
            "filename": "wolfsoftware.baseline_package_importable-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "db2e8f4187ab72ee7ba28c91469c55bd",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 5821,
            "upload_time": "2024-05-25T20:33:54",
            "upload_time_iso_8601": "2024-05-25T20:33:54.525351Z",
            "url": "https://files.pythonhosted.org/packages/56/b0/b291468a837cb1b509b8206fb6eef070e78c1465c876b180f1c252710b67/wolfsoftware.baseline_package_importable-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "115153e6b4ab11e12af587ff95859ebe0d78762a5b0a0a48c7408ba7d16257fc",
                "md5": "2378b1d8335923f45889dc670548f717",
                "sha256": "c617023725c646ebe7d935d1ea5014261b3875878a98c1efab16f528443f05e4"
            },
            "downloads": -1,
            "filename": "wolfsoftware_baseline_package_importable-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "2378b1d8335923f45889dc670548f717",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 7430,
            "upload_time": "2024-05-25T20:33:55",
            "upload_time_iso_8601": "2024-05-25T20:33:55.718619Z",
            "url": "https://files.pythonhosted.org/packages/11/51/53e6b4ab11e12af587ff95859ebe0d78762a5b0a0a48c7408ba7d16257fc/wolfsoftware_baseline_package_importable-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-25 20:33:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "GitHubToolbox",
    "github_project": "baseline-package-importable",
    "github_not_found": true,
    "lcname": "wolfsoftware.baseline-package-importable"
}
        
Elapsed time: 4.94985s