funcnodes-module


Namefuncnodes-module JSON
Version 0.4.0 PyPI version JSON
download
home_pageNone
SummaryNone
upload_time2025-09-03 13:38:16
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # FuncNodes Module

A tool for creating and managing modules for the [Funcnodes](https://github.com/Linkdlab/funcnodes) framework.

## πŸ“Œ Features

- πŸš€ Quick module setup with predefined templates.
- πŸ”Œ Optional React plugin for frontend integration.
- πŸ›  Automatic Git initialization (optional).
- βœ… Pre-configured testing using pytest.
- πŸ“‚ Python packaging support with pyproject.toml.

## πŸ“¦ Installation

```sh
python -m pip install funcnodes-module
```

Ensure you have Python 3.11+ installed.

## 🎯 Usage

General Syntax

```sh
funcnodes-module <command> [options]
```

### 1️⃣ Creating a New Module

```sh
funcnodes-module new <name> [options]
```

| Argument           | Description                                  |
| ------------------ | -------------------------------------------- |
| name               | The name of the new module.                  |
| --with_react       | Adds React plugin templates.                 |
| --nogit            | Skips Git initialization.                    |
| --path <directory> | Specifies a custom directory for the module. |

Example:

```sh
funcnodes-module new my_module --with_react --nogit --path ~/projects
```

### 2️⃣ Updating an Existing Module

```sh
funcnodes-module update [options]
```

| Argument              | Description                                  |
| --------------------- | -------------------------------------------- |
| --nogit               | Skips Git initialization.                    |
| --path                | <directory> Specifies the project directory. |
| --force               | Forces overwriting of certain files.         |
| --project_name <name> | Manually specify the project name.           |
| --module_name <name>  | Manually specify the module name.            |
| --package_name <name> | Manually specify the package name.           |

### 3️⃣ Generating a Third-Party Notice File

```sh
funcnodes-module gen_third_party_notice [options]
```

| Argument           | Description                      |
| ------------------ | -------------------------------- |
| --path <directory> | Specifies the project directory. |

**IMPORTANT**: This is not legally valid as it may not cover every package and/or license. [IANAL](https://en.wikipedia.org/wiki/IANAL) applies here.

### 4️⃣ Running a Demo Worker

```sh
funcnodes-module demoworker
```

This command:

Creates a demo worker if it doesn’t exist.
Starts the worker and a FuncNodes server.
πŸ“ Folder Structure

```sh
my_module/
│── src/
β”‚ β”œβ”€β”€ my_module/ # Python package
β”‚ β”‚ β”œβ”€β”€ **init**.py
β”‚ β”‚ β”œβ”€β”€ main.py
β”‚ β”œβ”€β”€ tests/
β”‚ β”‚ β”œβ”€β”€ test_my_module.py
β”‚ β”œβ”€β”€ react_plugin/ # Optional React Plugin
β”‚ β”œβ”€β”€ pyproject.toml # Python packaging
β”‚ β”œβ”€β”€ README.md
β”‚ β”œβ”€β”€ LICENSE
β”‚ β”œβ”€β”€ .gitignore
```

πŸ›  Development & Testing
Run Tests

```sh
pytest
```

Build & Install Locally

```sh
pip install .
```

## πŸ“œ License

This project is licensed under the MIT License.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "funcnodes-module",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "Julian Kimmig <julian.kimmig@linkdlab.de>",
    "download_url": "https://files.pythonhosted.org/packages/46/39/92986c354fb90d6261fb13cffc8bfc0a31178df692106d07d2a3f82b84ea/funcnodes_module-0.4.0.tar.gz",
    "platform": null,
    "description": "# FuncNodes Module\n\nA tool for creating and managing modules for the [Funcnodes](https://github.com/Linkdlab/funcnodes) framework.\n\n## \ud83d\udccc Features\n\n- \ud83d\ude80 Quick module setup with predefined templates.\n- \ud83d\udd0c Optional React plugin for frontend integration.\n- \ud83d\udee0 Automatic Git initialization (optional).\n- \u2705 Pre-configured testing using pytest.\n- \ud83d\udcc2 Python packaging support with pyproject.toml.\n\n## \ud83d\udce6 Installation\n\n```sh\npython -m pip install funcnodes-module\n```\n\nEnsure you have Python 3.11+ installed.\n\n## \ud83c\udfaf Usage\n\nGeneral Syntax\n\n```sh\nfuncnodes-module <command> [options]\n```\n\n### 1\ufe0f\u20e3 Creating a New Module\n\n```sh\nfuncnodes-module new <name> [options]\n```\n\n| Argument           | Description                                  |\n| ------------------ | -------------------------------------------- |\n| name               | The name of the new module.                  |\n| --with_react       | Adds React plugin templates.                 |\n| --nogit            | Skips Git initialization.                    |\n| --path <directory> | Specifies a custom directory for the module. |\n\nExample:\n\n```sh\nfuncnodes-module new my_module --with_react --nogit --path ~/projects\n```\n\n### 2\ufe0f\u20e3 Updating an Existing Module\n\n```sh\nfuncnodes-module update [options]\n```\n\n| Argument              | Description                                  |\n| --------------------- | -------------------------------------------- |\n| --nogit               | Skips Git initialization.                    |\n| --path                | <directory> Specifies the project directory. |\n| --force               | Forces overwriting of certain files.         |\n| --project_name <name> | Manually specify the project name.           |\n| --module_name <name>  | Manually specify the module name.            |\n| --package_name <name> | Manually specify the package name.           |\n\n### 3\ufe0f\u20e3 Generating a Third-Party Notice File\n\n```sh\nfuncnodes-module gen_third_party_notice [options]\n```\n\n| Argument           | Description                      |\n| ------------------ | -------------------------------- |\n| --path <directory> | Specifies the project directory. |\n\n**IMPORTANT**: This is not legally valid as it may not cover every package and/or license. [IANAL](https://en.wikipedia.org/wiki/IANAL) applies here.\n\n### 4\ufe0f\u20e3 Running a Demo Worker\n\n```sh\nfuncnodes-module demoworker\n```\n\nThis command:\n\nCreates a demo worker if it doesn\u2019t exist.\nStarts the worker and a FuncNodes server.\n\ud83d\udcc1 Folder Structure\n\n```sh\nmy_module/\n\u2502\u2500\u2500 src/\n\u2502 \u251c\u2500\u2500 my_module/ # Python package\n\u2502 \u2502 \u251c\u2500\u2500 **init**.py\n\u2502 \u2502 \u251c\u2500\u2500 main.py\n\u2502 \u251c\u2500\u2500 tests/\n\u2502 \u2502 \u251c\u2500\u2500 test_my_module.py\n\u2502 \u251c\u2500\u2500 react_plugin/ # Optional React Plugin\n\u2502 \u251c\u2500\u2500 pyproject.toml # Python packaging\n\u2502 \u251c\u2500\u2500 README.md\n\u2502 \u251c\u2500\u2500 LICENSE\n\u2502 \u251c\u2500\u2500 .gitignore\n```\n\n\ud83d\udee0 Development & Testing\nRun Tests\n\n```sh\npytest\n```\n\nBuild & Install Locally\n\n```sh\npip install .\n```\n\n## \ud83d\udcdc License\n\nThis project is licensed under the MIT License.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": null,
    "version": "0.4.0",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "15fff7a19deaed09547e7ccdf4d1203a0307cf2aae75e02f7f99cdeb945ce89c",
                "md5": "257364abfbc2ec5aff1feca9de7cdbd4",
                "sha256": "d78c6c07423d2c4356f40b552a558329b4a369ca4f4c71ac66722ff4e329b335"
            },
            "downloads": -1,
            "filename": "funcnodes_module-0.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "257364abfbc2ec5aff1feca9de7cdbd4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 39006,
            "upload_time": "2025-09-03T13:38:15",
            "upload_time_iso_8601": "2025-09-03T13:38:15.115269Z",
            "url": "https://files.pythonhosted.org/packages/15/ff/f7a19deaed09547e7ccdf4d1203a0307cf2aae75e02f7f99cdeb945ce89c/funcnodes_module-0.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "463992986c354fb90d6261fb13cffc8bfc0a31178df692106d07d2a3f82b84ea",
                "md5": "c62017f22a671ca0606b70bf0492156a",
                "sha256": "ff8cb4cf6b8fe1517318888908c7ca9e7362e4b3918e6e7a1e26e95d5aa53fe1"
            },
            "downloads": -1,
            "filename": "funcnodes_module-0.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c62017f22a671ca0606b70bf0492156a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 163984,
            "upload_time": "2025-09-03T13:38:16",
            "upload_time_iso_8601": "2025-09-03T13:38:16.591942Z",
            "url": "https://files.pythonhosted.org/packages/46/39/92986c354fb90d6261fb13cffc8bfc0a31178df692106d07d2a3f82b84ea/funcnodes_module-0.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-03 13:38:16",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "funcnodes-module"
}
        
Elapsed time: 2.25523s