{"id":22411048,"url":"https://github.com/smapiot/vscode-piral","last_synced_at":"2025-07-29T22:11:54.876Z","repository":{"id":40352622,"uuid":"262973650","full_name":"smapiot/vscode-piral","owner":"smapiot","description":"The official VS Code extension for Piral. Debug, Build, Publish! :superhero:","archived":false,"fork":false,"pushed_at":"2024-12-04T11:51:05.000Z","size":3156,"stargazers_count":4,"open_issues_count":3,"forks_count":3,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-04-07T10:51:21.055Z","etag":null,"topics":["distributed","editor","extension","frontend","javascript","js","micro-frontend","microfrontends","piral","plugin","productivity","spa","ts","typescript","vscode","webapp","webdev"],"latest_commit_sha":null,"homepage":"https://piral.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smapiot.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":["smapiot","FlorianRappl"],"custom":["https://www.paypal.me/FlorianRappl"]}},"created_at":"2020-05-11T07:42:56.000Z","updated_at":"2024-12-04T11:51:09.000Z","dependencies_parsed_at":"2024-12-04T12:28:21.604Z","dependency_job_id":"24642ccb-2a3d-440c-b4b0-37d6ad553e75","html_url":"https://github.com/smapiot/vscode-piral","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/smapiot/vscode-piral","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smapiot%2Fvscode-piral","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smapiot%2Fvscode-piral/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smapiot%2Fvscode-piral/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smapiot%2Fvscode-piral/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smapiot","download_url":"https://codeload.github.com/smapiot/vscode-piral/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smapiot%2Fvscode-piral/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267771186,"owners_count":24142015,"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","status":"online","status_checked_at":"2025-07-29T02:00:12.549Z","response_time":2574,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["distributed","editor","extension","frontend","javascript","js","micro-frontend","microfrontends","piral","plugin","productivity","spa","ts","typescript","vscode","webapp","webdev"],"created_at":"2024-12-05T13:12:52.358Z","updated_at":"2025-07-29T22:11:54.819Z","avatar_url":"https://github.com/smapiot.png","language":"TypeScript","funding_links":["https://github.com/sponsors/smapiot","https://github.com/sponsors/FlorianRappl","https://www.paypal.me/FlorianRappl"],"categories":[],"sub_categories":[],"readme":"[![Piral Logo](https://github.com/smapiot/piral/raw/main/docs/assets/logo.png)](https://piral.io)\n\n# `piral-vscode`\n\n[![VS Code Marketplace](https://vsmarketplacebadges.dev/version-short/smapiot.vscode-piral.svg)](https://marketplace.visualstudio.com/items?itemName=smapiot.vscode-piral) [![Open VSX](https://img.shields.io/open-vsx/v/smapiot/vscode-piral)](https://open-vsx.org/extension/smapiot/vscode-piral) [![Publish Extension](https://github.com/smapiot/vscode-piral/actions/workflows/node.js.yml/badge.svg?branch=develop)](https://github.com/smapiot/vscode-piral/actions/workflows/node.js.yml) [![GitHub Tag](https://img.shields.io/github/tag/smapiot/vscode-piral.svg)](https://github.com/smapiot/vscode-piral/releases) [![GitHub Issues](https://img.shields.io/github/issues/smapiot/vscode-piral.svg)](https://github.com/smapiot/vscode-piral/issues) [![Gitter Chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/piral-io/community) [![GitHub License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/smapiot/vscode-piral/blob/main/LICENSE)\n\nThe official VS Code extension for [Piral](https://piral.io).\n\nAvailable in the following marketplaces:\n\n- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=smapiot.vscode-piral) for VS Code\n- [Open VSX](https://open-vsx.org/extension/smapiot/vscode-piral) for VSCodium, code-server and Eclipse Theia\n\n## Prerequisites\n\nYou'll need **Node.js (v16+)** with **npm (v7+)** installed for using the extension.\n\nThe extension works on all OS where VS Code is running.\n\n## Overview\n\nThis extension is a useful companion when developing Piral based app shells, or pilets for existing app shells.\n\nIt can be regarded as a visualizer for the `piral-cli` command line utility. However, our plan is to extend it with more functionality, usually tied very closely to the VS Code editing experience.\n\n## Features\n\nRight now the following features are part of this extension:\n\n- A workspace panel info with plugins, dependencies, versions, ...\n- Additions to the command palette using useful commands (e.g., `piral debug`)\n- A provider for `.codegen` files (essentially using JavaScript as language)\n- A wizard for scaffolding new projects (Piral instances or pilets)\n- Additional debugging utilities and tools\n- Start, build, validate, ... run all commands without a command line\n\n### Workspace\n\nWhen the extension detects a Piral instance or pilet folder opened it automatically fills some workspace information. The workspace info also contains links to documentation and helpful resources.\n\n![Scaffold Pilet](./docs/workspace.png)\n\n### Tasks\n\nYou can add provided tasks for your Piral instances or pilets.\n\n- `piral: debug` - a build (watch) task to debug the Piral instance\n- `piral: build` - a build task to build the Piral instance\n- `piral: validate` - a test task to validate the Piral instance\n- `piral: declaration` - a build task to generate the declaration for the Piral instance\n- `pilet: debug` - a build (watch) task to debug the pilet\n- `pilet: build` - a build task to build the pilet\n- `pilet: validate` - a test task to validate the pilet\n- `pilet: pack` - a build task to pack the pilet\n\nYou can either run these tasks manually or use them, e.g., in a *launch.json*:\n\n```json\n{\n    \"version\": \"0.2.0\",\n    \"configurations\": [\n        {\n            \"type\": \"chrome\",\n            \"request\": \"launch\",\n            \"name\": \"Launch Chrome against localhost\",\n            \"url\": \"http://localhost:1234\",\n            \"webRoot\": \"${workspaceFolder}\",\n            \"preLaunchTask\": \"pilet: debug\"\n        }\n    ]\n}\n```\n\n### Problem Matcher\n\nIf you make your own task using the `piral-cli` you can use the `$piral-cli-debug` problem matcher to monitor the `piral debug` / `pilet debug` commands.\n\n### Command Palette\n\nAll commands that are relevant to Piral can be run from the command palette.\n\n![Scaffold Pilet](./docs/command-palette.png)\n\n### Scaffold Project Wizard\n\nA new project can be scaffolded directly from VS Code. Right now two project types are supported.\n\n![Scaffold Project](./docs/scaffold-project.png)\n\n### Scaffold Piral Instance Wizard\n\nWhen a Piral instance should be scaffolded additional information is requested. All options can be selected graphically.\n\n![Scaffold Pilet](./docs/scaffold-piral.png)\n\n### Scaffold Pilet Wizard\n\nWhen a pilet should be scaffolded additional information is requested. All options can be selected graphically.\n\n![Scaffold Pilet](./docs/scaffold-pilet.png)\n\n### Codegen Support\n\nWith this extension you'll get support for `*.codegen` files. This boils down to getting JS support associated with such files.\n\n![Scaffold Pilet](./docs/codegen.png)\n\n## Development\n\n### Installation\n\nClone the repository and install the dependencies using `npm`:\n\n```sh\nnpm i\n```\n\nThen open VS Code (`code .`) and run it using `F5`.\n\n### Publish\n\nFor publishing the official command line tool `vsce` should be used.\n\n```sh\nvsce package\nvsce publish -p \u003ctoken\u003e\n```\n\nThis will package the current version of the repository and publish it. Make sure to have the right token specified. Follow the [instructions outlined here](https://code.visualstudio.com/api/working-with-extensions/publishing-extension#get-a-personal-access-token) to get a new one.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmapiot%2Fvscode-piral","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmapiot%2Fvscode-piral","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmapiot%2Fvscode-piral/lists"}