monoplane


Namemonoplane JSON
Version 0.1.1 PyPI version JSON
download
home_pagehttps://github.com/yegortokmakov/monoplane
SummaryMonoplane is a tiny tool designed to help you run multiple processes in your local development environment. Especially useful for monorepos.
upload_time2024-01-27 02:41:15
maintainer
docs_urlNone
authorYegor Tokmakov
requires_python>=3.10,<4.0
licenseMIT
keywords monorepo development local
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Monoplane

Monoplane is a tiny tool designed to help you run multiple processes in your local development environment. It is like a very stripped down docker compose for local shell commands. Especially useful for monorepos. Obviously, not for production.

## Using Monoplane

```bash
pip install monoplane
```

Create a `monoplane.yml` file in your project root:

```yaml
color_stderr: "[91m"

services:
  - name: api
    cwd: resources/api
    command: skaffold dev
    build: npm run generate
    color: "[0;33m"
    notes: http://localhost:30005
    env:
      - name: PORT
        value: 30005

  - name: console
    cwd: resources/web_console
    command: npm run dev
    build: npm run build
    color: "[0;36m"
    notes: http://localhost:30001
```

Then run `monoplane` or `mp` in your project root. It will start all services in parallel.

Some useful commands (just press key while running):

- `r` - restart all services
- `s` - print status of all services
- `b` - execute all build commands
- `c` - clear screen

Notes added in the config file will be printed when you press `s`. Useful for adding links to your service endpoints to avoid remembering ports and typing them over and over again.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/yegortokmakov/monoplane",
    "name": "monoplane",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10,<4.0",
    "maintainer_email": "",
    "keywords": "monorepo,development,local",
    "author": "Yegor Tokmakov",
    "author_email": "yegor@tokmakov.biz",
    "download_url": "https://files.pythonhosted.org/packages/1d/89/26725ebce8e7ff98bfe9cb5321e9be9fc04b43f38e4d7bc35f727107ee6a/monoplane-0.1.1.tar.gz",
    "platform": null,
    "description": "# Monoplane\n\nMonoplane is a tiny tool designed to help you run multiple processes in your local development environment. It is like a very stripped down docker compose for local shell commands. Especially useful for monorepos. Obviously, not for production.\n\n## Using Monoplane\n\n```bash\npip install monoplane\n```\n\nCreate a `monoplane.yml` file in your project root:\n\n```yaml\ncolor_stderr: \"[91m\"\n\nservices:\n  - name: api\n    cwd: resources/api\n    command: skaffold dev\n    build: npm run generate\n    color: \"[0;33m\"\n    notes: http://localhost:30005\n    env:\n      - name: PORT\n        value: 30005\n\n  - name: console\n    cwd: resources/web_console\n    command: npm run dev\n    build: npm run build\n    color: \"[0;36m\"\n    notes: http://localhost:30001\n```\n\nThen run `monoplane` or `mp` in your project root. It will start all services in parallel.\n\nSome useful commands (just press key while running):\n\n- `r` - restart all services\n- `s` - print status of all services\n- `b` - execute all build commands\n- `c` - clear screen\n\nNotes added in the config file will be printed when you press `s`. Useful for adding links to your service endpoints to avoid remembering ports and typing them over and over again.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Monoplane is a tiny tool designed to help you run multiple processes in your local development environment. Especially useful for monorepos.",
    "version": "0.1.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/yegortokmakov/monoplane/issues",
        "Homepage": "https://github.com/yegortokmakov/monoplane",
        "Repository": "https://github.com/yegortokmakov/monoplane"
    },
    "split_keywords": [
        "monorepo",
        "development",
        "local"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2fc4dec238b442bf6c7ff41b2112592905964727847cd0e4b560e95d2c777956",
                "md5": "723fd7c135ada6a18fffce773b75f1c5",
                "sha256": "ab258b06e38e667477ce694fb7c7b412b556175331105aced04777505361aaf7"
            },
            "downloads": -1,
            "filename": "monoplane-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "723fd7c135ada6a18fffce773b75f1c5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10,<4.0",
            "size": 4500,
            "upload_time": "2024-01-27T02:41:14",
            "upload_time_iso_8601": "2024-01-27T02:41:14.029065Z",
            "url": "https://files.pythonhosted.org/packages/2f/c4/dec238b442bf6c7ff41b2112592905964727847cd0e4b560e95d2c777956/monoplane-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1d8926725ebce8e7ff98bfe9cb5321e9be9fc04b43f38e4d7bc35f727107ee6a",
                "md5": "3d8ddec32aa43a2604e9b38a7ee5975c",
                "sha256": "1592ec88e83cb19f89ce812b6b1f27e93f44632a6925305e20f029e6603ce7e1"
            },
            "downloads": -1,
            "filename": "monoplane-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "3d8ddec32aa43a2604e9b38a7ee5975c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10,<4.0",
            "size": 3748,
            "upload_time": "2024-01-27T02:41:15",
            "upload_time_iso_8601": "2024-01-27T02:41:15.274592Z",
            "url": "https://files.pythonhosted.org/packages/1d/89/26725ebce8e7ff98bfe9cb5321e9be9fc04b43f38e4d7bc35f727107ee6a/monoplane-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-27 02:41:15",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "yegortokmakov",
    "github_project": "monoplane",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "monoplane"
}
        
Elapsed time: 0.22740s