{"id":20388577,"url":"https://github.com/efureev/parallel","last_synced_at":"2025-12-02T17:02:06.941Z","repository":{"id":229205563,"uuid":"775964329","full_name":"efureev/parallel","owner":"efureev","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-13T16:51:39.000Z","size":1578,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-15T09:02:36.588Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/efureev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-22T12:02:14.000Z","updated_at":"2024-06-13T16:51:42.000Z","dependencies_parsed_at":"2024-03-22T19:25:14.048Z","dependency_job_id":"7c6c5a59-139d-4775-90e0-ffdc8788322e","html_url":"https://github.com/efureev/parallel","commit_stats":null,"previous_names":["efureev/parallel"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efureev%2Fparallel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efureev%2Fparallel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efureev%2Fparallel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efureev%2Fparallel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/efureev","download_url":"https://codeload.github.com/efureev/parallel/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241940541,"owners_count":20045878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T03:11:39.597Z","updated_at":"2025-12-02T17:02:06.934Z","avatar_url":"https://github.com/efureev.png","language":"Go","readme":"# Parallel\n\n[![Go Coverage](https://github.com/efureev/parallel/wiki/coverage.svg)](https://raw.githack.com/wiki/efureev/reggol/coverage.html)\n[![Test](https://github.com/efureev/parallel/actions/workflows/test.yml/badge.svg)](https://github.com/efureev/parallel/actions/workflows/test.yml)\n\nA tool for running multiple console commands in parallel with output display in the terminal.\n\n## Installation\n\n```shell script\ngo install github.com/efureev/parallel@latest\n```\n\n\n## Usage\n\nIf you have a configuration file `.parallelrc.yaml` in the execution folder:\n\n```shell script\nparallel\n```\n\n\nIf the configuration file is located elsewhere:\n\n```shell script\nparallel -f /path/to/config/flow.yaml\n```\n\n\n## Screenshots\n\n![screen1.png](.assets%2Fscreen1.png)\n![sceen2.png](.assets%2Fsceen2.png)\n![screen3.png](.assets%2Fscreen3.png)\n\n## Configuration File Structure\n\nLanguage: `yaml`\n\n```yaml\ncommands: # list of parallel commands\n  php-server: # command chain name\n    artisan: # command name\n      pipe: true  # listen to stdOutput \u0026 stdErr for this command\n      cmd: [ 'php', 'artisan', 'serve', '--port', '8010' ] # command and its arguments\n      dir: 'app' # execution directory\n\n  web-services: # command mode\n    nginx-cmd:\n      pipe: true\n      cmd: [ 'docker', 'container', 'run',  '--rm', '-p', '8090:80', '--name', 'nginx', 'nginx' ]\n      format:\n        cmdName: '%CMD_NAME% %CMD_ARGS%' # command name formatting\n\n  docker-services: # Docker mode\n    nginx-docker:\n      docker:\n        image:\n          name: 'nginx'\n          # tag: 'v1' # default 'latest'\n          # pull: 'always' # default: none\n        ports: [\n          '127.0.0.1:80:8080',\n          '127.0.0.1:443:8443',\n        ]\n        # removeAfterAll: false # default: true\n        # cmd: 'exec' # default: 'run'\n\n  frontend:\n    list-files: # this command will execute without pipe\n      cmd: [ 'ls', '-la' ]\n    yarn-dev:\n      pipe: true\n      cmd: [ 'yarn', 'dev' ]\n      dir: 'app'\n\n  network:\n    ping-test:\n      pipe: true\n      cmd: [ 'ping', '-c', '3','ya.ru' ]\n```\n\n\n## Features\n\n- **Command Chains**: Group related commands into logical blocks for better organization\n- **Docker Support**: Built-in support for running Docker containers with automatic command formatting\n- **Colored Output**: Each command chain gets a unique color for better readability\n- **Output Control**: Control which commands should display their output via the `pipe` parameter\n- **Working Directories**: Specify custom directories for command execution\n- **Command Formatting**: Customize how command names are displayed in the output\n- **Auto-cleanup**: Docker containers are automatically removed after execution (configurable)\n- **Flexible Configuration**: Support for both direct commands and Docker-based workflows","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefureev%2Fparallel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fefureev%2Fparallel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefureev%2Fparallel/lists"}