https://github.com/biocpy/biocsetup
Quickly setup new BiocPy packages
https://github.com/biocpy/biocsetup
Last synced: about 4 hours ago
JSON representation
Quickly setup new BiocPy packages
- Host: GitHub
- URL: https://github.com/biocpy/biocsetup
- Owner: BiocPy
- License: mit
- Created: 2024-12-10T18:58:38.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2025-02-03T16:31:52.000Z (3 months ago)
- Last Synced: 2025-02-03T17:33:06.935Z (3 months ago)
- Language: Python
- Homepage: https://biocpy.github.io/BiocSetup/
- Size: 195 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Authors: AUTHORS.md
Awesome Lists containing this project
README
[](https://pypi.org/project/biocsetup/)

[](https://pyscaffold.org/)# BiocSetup
BiocSetup helps scaffold new Python packages in [BiocPy](https://github.com/biocpy) with consistent configuration for package management.
It automates the setup process by using PyScaffold with additional configurations specific to BiocPy projects, including documentation setup, GitHub Actions for testing and publishing, and code quality tools.
For more details, see our [developer guide](https://github.com/BiocPy/developer_guide).
## Installation
```bash
pip install biocsetup
```## Usage
### Command Line Interface
Create a new package using the command line:
```bash
biocsetup my-new-package --description "Description of my package" --license MIT
```Options:
- `--description`, `-d`: Project description
- `--license`, `-l`: License to use (default: MIT)
- `--rst`: To use reStructuredText, otherwise uses Markdown by default.### Python API
You can also create packages programmatically:
```python
from biocsetup import create_repositorycreate_repository(
project_path="my-new-package",
description="Description of my package",
license="MIT",
rst=False,
)
```## After setup
- The GitHub workflows use "trusted publisher workflow" to publish packages to PyPI. Read more instructions [here](https://docs.pypi.org/trusted-publishers/).
- Tagging the repository will trigger an action to test, generate documentation, and publish the package to PyPI.
- Install [tox](https://tox.wiki/en/4.23.2/) to handle package tasks. GitHub Actions relies on the tox configuration to test, generate documentation, and publish packages.
- (Optional) Enable the [pre-commit.ci](https://pre-commit.ci/) bot for your repository.
- (Optional) Install [ruff](https://docs.astral.sh/ruff/) for code formatting.
- (Optional) Setup [codecov](https://about.codecov.io/) for coverage reports.## Note
This project has been set up using PyScaffold 4.6. For details and usage
information on PyScaffold see https://pyscaffold.org/.