tabby-profile-share 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,22 +2,26 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
- ## 0.1.3 — Installation compatibility fix (pending npm publication)
5
+ ## 0.1.4 — Documentation, discovery and GitHub release (2026-10-24)
6
6
 
7
- - Fixed `ERESOLVE` on Tabby 1.0.235 when other installed plugins declare incompatible Angular peer dependencies (for example, `tabby-save-output@3.1.0` requires Angular 4).
8
- - Removed *runtime peerDependencies* for Angular/Tabby host modules. These modules are provided by Tabby's own runtime; Angular 15 and Tabby API packages remain development-only dependencies for compilation.
9
- - Added a package integration test using Tabby's npm Arborist installer with the legacy plugin already installed. Export/import features are unchanged.
7
+ - Improve npm package description and focused discovery keywords for SSH profile export/import.
8
+ - Refresh English and Brazilian Portuguese READMEs with public npm install instructions, badges and release links.
9
+ - Remove maintainer-only GitHub Actions publishing instructions from both READMEs (the publishing guide remains under `docs/`).
10
+ - Add a fully synthetic Tabby YAML config with nested groups and 16 fake SSH profiles for screenshots, plus a privacy-focused capture guide.
11
+ - No changes to the plugin's SSH import/export behavior or runtime dependencies.
10
12
 
13
+ ## 0.1.3 — Installation compatibility fix (2026-10-24)
11
14
 
15
+ - Fixed npm `ERESOLVE` on Tabby 1.0.235 when other installed plugins declare incompatible Angular peer dependencies, such as `tabby-save-output@3.1.0`.
16
+ - Removed runtime `peerDependencies` for Angular and Tabby host modules; development dependencies remain for compilation.
17
+ - Added an integration test using Tabby's npm Arborist installer with the legacy plugin already installed.
18
+ - First successful installation via the official Tabby plugin manager was confirmed by an early tester.
12
19
 
13
- - Open-source release preparation: MIT license, public documentation, security policy and contribution guidelines.
14
- - npm package metadata and release checklists.
20
+ ## 0.1.2 — First npm public preview (2026-10-24)
15
21
 
16
- ## 0.1.2 — Prepared, not yet published to npm
17
-
18
- - Bump version for first public preview.
19
- - Review Git history and document Angular 15 compatibility/security advisory boundaries.
20
- - Add complete development audit visibility and npm name lookup to CI.
22
+ - Published initial public npm version with MIT license and documentation.
23
+ - Reviewed Git history and documented Angular 15 compatibility/security advisory boundaries.
24
+ - Added build audit visibility and npm lookup in CI.
21
25
 
22
26
  ## 0.1.1 — Preview (2026-10-24)
23
27
 
@@ -27,7 +31,7 @@
27
31
 
28
32
  ## 0.1.0 — Development preview (2026-10-24)
29
33
 
30
- - Standalone settings plugin for Tabby.
34
+ - Standalone settings plugin for official Tabby.
31
35
  - Selective SSH export with folder hierarchy and explicit username opt-in.
32
- - JSON sanitizer, append-only import and username prompt.
33
- - Unit tests for secrets, format validation and ID remapping.
36
+ - Allowlist-based JSON sanitizer, append-only import and username prompt.
37
+ - Unit tests for secret exclusions, format validation and ID remapping.
package/README.md CHANGED
@@ -4,12 +4,16 @@
4
4
 
5
5
  [![CI](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml/badge.svg)](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml)
6
6
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
7
+ [![npm version](https://img.shields.io/npm/v/tabby-profile-share.svg)](https://www.npmjs.com/package/tabby-profile-share)
8
+ [![npm downloads](https://img.shields.io/npm/dm/tabby-profile-share.svg)](https://www.npmjs.com/package/tabby-profile-share)
7
9
 
8
10
  [Português (Brasil)](README.pt-BR.md)
9
11
 
10
12
  Tabby Profile Share is an **independent, community-maintained plugin** for [Tabby by Eugeny](https://github.com/Eugeny/tabby). It does **not** modify Tabby, require the Tabby Performance fork, or have any affiliation with or endorsement from the Tabby maintainers.
11
13
 
12
- > **Status:** Preview 0.1.3 (unpublished) — manual installation and SSH export confirmed by an early tester. Wider compatibility, import scenarios and public npm publication remain separate validation steps. Do not assume all Tabby versions have been tested.
14
+ **Available on npm:** [tabby-profile-share](https://www.npmjs.com/package/tabby-profile-share) · [GitHub releases](https://github.com/gugahartmann/Tabby_Profile_Share/releases) · [Report an issue](https://github.com/gugahartmann/Tabby_Profile_Share/issues/new/choose).
15
+
16
+ Tested with the official Tabby **1.0.235** plugin manager on Windows for installation; broader host versions and end-to-end import flows require continued community testing.
13
17
 
14
18
  ## Features
15
19
 
@@ -29,19 +33,17 @@ The file contains **no stored credentials**, private key paths or login scripts.
29
33
 
30
34
  ## Installation compatibility
31
35
 
32
- Version 0.1.3 removes runtime Angular/Tabby peer requirements to prevent npm `ERESOLVE` when legacy plugins (e.g., `tabby-save-output@3.1.0` with Angular 4) are present. Tabby itself supplies Angular and the Tabby APIs when loading plugins. This change does not remove required development dependencies from the project, and does not fix security issues in legacy plugins.
36
+ Versions 0.1.3+ remove runtime Angular/Tabby peer requirements to prevent npm `ERESOLVE` when legacy plugins (e.g., `tabby-save-output@3.1.0` with Angular 4) are present. Tabby itself supplies Angular and the Tabby APIs when loading plugins. This change does not remove required development dependencies from the project, and does not fix security issues in legacy plugins.
33
37
 
34
38
  ## Install
35
39
 
36
- ### Once the package is available on npm
37
-
38
- Open **Tabby → Settings → Plugins**, search for **profile-share**, install `tabby-profile-share`, and restart Tabby if requested. Tabby discovers community plugins distributed with the `tabby-plugin` npm keyword.
40
+ Open **Tabby → Settings → Plugins → Available**, search for **profile-share**, select `tabby-profile-share`, click **Get**, and restart Tabby when prompted. The plugin is distributed through [npm](https://www.npmjs.com/package/tabby-profile-share) and does **not** require cloning this repository. The Tabby search ranking may place new plugins near the bottom of results. Once installed, open **Settings → Profile Sharing**.
39
41
 
40
- **Not yet published to npm:** Until the package appears in npm search, use the preview instructions below. Publishing status should not be inferred from this README.
42
+ If you prefer a compiled, standalone package, check [GitHub Releases](https://github.com/gugahartmann/Tabby_Profile_Share/releases). The manual Windows option remains available below.
41
43
 
42
- ### Preview: manual install on Windows
44
+ ### Alternative: manual install on Windows
43
45
 
44
- 1. Download the latest compiled ZIP from [Actions](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml) (or a future GitHub release).
46
+ 1. Download the **compiled plugin ZIP** from [Releases](https://github.com/gugahartmann/Tabby_Profile_Share/releases) or [Actions](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml).
45
47
  2. The Actions artifact contains another ZIP with a top-level directory called `tabby-profile-share`. Extract that directory.
46
48
  3. Close Tabby fully, including the tray icon, and copy the folder to:
47
49
  `%APPDATA%\tabby\plugins\node_modules\tabby-profile-share\`
@@ -50,6 +52,12 @@ Open **Tabby → Settings → Plugins**, search for **profile-share**, install `
50
52
 
51
53
  Do not install the directory one level too high, or nest `tabby-profile-share` twice.
52
54
 
55
+ ## Screenshots and demo profiles
56
+
57
+ For screenshots, use the [**synthetic Tabby YAML configuration**](examples/demo-profiles.yaml) containing **16 example SSH profiles across nested regions, core/access networks and data centers**. All hosts use the reserved documentation IPv4 ranges or `.invalid` domains; there are **no real devices or credentials**.
58
+
59
+ See the [screenshot guide](docs/SCREENSHOTS.md) to set up an isolated instance and capture the folder selector, username opt-in and import preview. **Do not replace your real `config.yaml` or upload an unredacted screenshot of production profiles.** Screenshots will be embedded in this README once captured and reviewed.
60
+
53
61
  ## Use
54
62
 
55
63
  **Export:** Select the folder tree, review the list of usernames (unchecked by default), explicitly enable only shared/team usernames, then click **Export**. Inspect the resulting JSON before distributing it.
@@ -58,12 +66,6 @@ Do not install the directory one level too high, or nest `tabby-profile-share` t
58
66
 
59
67
  See the [functional specification](docs/SPEC.md) for detailed behavior. Import has automated unit coverage, but full UI regression across Tabby releases remains on the roadmap.
60
68
 
61
- ## Publish via GitHub Actions (no local Git or Node.js required)
62
-
63
- Maintainers can prepare npm releases entirely in the browser with the **Stage npm package** workflow. The first release uses a temporary npm stage-only token in the repository secret `NPM_STAGE_TOKEN`; subsequent releases use npm Trusted Publishing (OIDC) with no permanent token. Every release is reviewed and approved on npmjs.com with 2FA before it goes live.
64
-
65
- See the [complete step-by-step npm GitHub Actions guide](docs/PUBLISHING.md). Publishing is manual and never triggered by pushes or pull requests.
66
-
67
69
  ## Development
68
70
 
69
71
  Requirements: Node.js 22 and npm.
@@ -79,7 +81,7 @@ npm pack --dry-run
79
81
 
80
82
  The production entry point is `dist/index.js`. Angular and Tabby dependencies are external to the generated bundle, loaded by the host Tabby application.
81
83
 
82
- The repository includes CI for unit tests, compilation and packaging. Before a public release, verify the packaged files, audit dependencies, and test import twice on a disposable Tabby configuration.
84
+ The repository includes CI for unit tests, compilation, packaging, and compatibility with legacy Tabby plugins. Use a disposable Tabby configuration when testing imports. Project release procedures are documented in [docs/PUBLISHING.md](docs/PUBLISHING.md).
83
85
 
84
86
  ## Feedback and issue reports
85
87
 
package/README.pt-BR.md CHANGED
@@ -4,12 +4,16 @@
4
4
 
5
5
  [![CI](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml/badge.svg)](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml)
6
6
  [![Licença MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
7
+ [![Versão npm](https://img.shields.io/npm/v/tabby-profile-share.svg)](https://www.npmjs.com/package/tabby-profile-share)
8
+ [![Downloads npm](https://img.shields.io/npm/dm/tabby-profile-share.svg)](https://www.npmjs.com/package/tabby-profile-share)
7
9
 
8
10
  [English](README.md)
9
11
 
10
12
  O **Tabby Profile Share** é um plugin **independente, mantido pela comunidade**, compatível com o [Tabby do Eugeny](https://github.com/Eugeny/tabby). Não exige o fork Tabby Performance nem modifica o código original do Tabby.
11
13
 
12
- > **Estado:** Preview 0.1.3 (ainda não publicada). A instalação manual e a exportação foram confirmadas em teste inicial. A compatibilidade entre versões e todos os fluxos de importação ainda precisam de testes adicionais. O pacote ainda não foi publicado no npm.
14
+ **Publicado no npm:** [tabby-profile-share](https://www.npmjs.com/package/tabby-profile-share) · [Releases no GitHub](https://github.com/gugahartmann/Tabby_Profile_Share/releases) · [Abrir issue](https://github.com/gugahartmann/Tabby_Profile_Share/issues/new/choose).
15
+
16
+ Instalação via gerenciador de plugins confirmada no Tabby oficial **1.0.235**, Windows. A compatibilidade com outras versões e cenários completos de importação continua em validação.
13
17
 
14
18
  ## Funcionalidades
15
19
 
@@ -25,19 +29,17 @@ O **Tabby Profile Share** é um plugin **independente, mantido pela comunidade**
25
29
 
26
30
  ## Compatibilidade da instalação
27
31
 
28
- A versão 0.1.3 remove as restrições de `peerDependencies` de execução para Angular e APIs do Tabby. Isso evita o erro `ERESOLVE` causado por plugins legados como `tabby-save-output@3.1.0` (Angular 4), pois o Tabby já oferece Angular e seus módulos internamente. As dependências de desenvolvimento continuam presentes para compilar e testar o código. Nenhuma configuração ou credencial SSH é alterada.
32
+ A partir da versão 0.1.3, o plugin remove as restrições de `peerDependencies` de execução para Angular e APIs do Tabby. Isso evita o erro `ERESOLVE` causado por plugins legados como `tabby-save-output@3.1.0` (Angular 4), pois o Tabby já oferece Angular e seus módulos internamente. As dependências de desenvolvimento continuam presentes para compilar e testar o código. Nenhuma configuração ou credencial SSH é alterada.
29
33
 
30
34
  ## Instalação
31
35
 
32
- ### Pelo próprio Tabby (após publicação no npm)
33
-
34
- Abra **Settings → Plugins**, procure **profile-share** / `tabby-profile-share`, instale o pacote e reinicie, se solicitado.
36
+ No Tabby, abra **Settings → Plugins → Available**, pesquise **profile-share**, encontre `tabby-profile-share`, clique em **Get** e reinicie se solicitado. O plugin está no [npm](https://www.npmjs.com/package/tabby-profile-share), sem necessidade de instalar Git ou compilar manualmente. Por conta do ranking da busca, plugins recentes podem aparecer no final da lista. Depois, abra **Settings → Profile Sharing**.
35
37
 
36
- O plugin ainda **não está publicado no npm**. Até lá, use o pacote compilado:
38
+ Também oferecemos arquivos compilados em [Releases](https://github.com/gugahartmann/Tabby_Profile_Share/releases) para instalação manual.
37
39
 
38
40
  ### Instalação manual — Windows
39
41
 
40
- 1. Acesse [GitHub Actions](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml), escolha uma execução aprovada e baixe o ZIP do plugin.
42
+ 1. Baixe o ZIP compilado em [GitHub Releases](https://github.com/gugahartmann/Tabby_Profile_Share/releases) ou em [GitHub Actions](https://github.com/gugahartmann/Tabby_Profile_Share/actions/workflows/test.yml).
41
43
  2. Extraia a pasta `tabby-profile-share` que está dentro do ZIP do pacote.
42
44
  3. Feche completamente o Tabby, inclusive a bandeja.
43
45
  4. Copie para:
@@ -47,6 +49,12 @@ O plugin ainda **não está publicado no npm**. Até lá, use o pacote compilado
47
49
 
48
50
  Evite colocar a pasta diretamente em `plugins` ou aninhar duas pastas `tabby-profile-share`.
49
51
 
52
+ ## Capturas de tela com perfis demonstrativos
53
+
54
+ Para capturar a interface sem expor equipamentos da rede real, utilize o [**arquivo YAML de demonstração**](examples/demo-profiles.yaml), com **16 conexões SSH fictícias** agrupadas por regiões, backbone, acesso e data centers. Os hosts usam endereços de documentação ou domínios `.invalid`, sem credenciais.
55
+
56
+ Siga o [guia de screenshots](docs/SCREENSHOTS.md) para preparar uma instância de teste e fotografar a seleção de pastas, autorização de usernames e prévia de importação. **Não substitua seu `config.yaml` real.** As capturas serão incorporadas ao README depois de registradas e revisadas.
57
+
50
58
  ## Como utilizar
51
59
 
52
60
  **Exportação:** marque as pastas e equipamentos que deseja compartilhar, selecione apenas os usuários SSH de equipe que devem acompanhar o arquivo e clique em **Export**.
@@ -59,12 +67,6 @@ Acesse [Nova issue](https://github.com/gugahartmann/Tabby_Profile_Share/issues/n
59
67
 
60
68
  **Nunca anexe exports reais, endereços IP internos, nomes de equipamentos de produção, chaves, senhas ou logs sem anonimização.** Para falhas de segurança, siga [SECURITY.md](SECURITY.md).
61
69
 
62
- ## Publicação pelo GitHub Actions (sem Git ou Node.js local)
63
-
64
- O mantenedor pode publicar usando somente o navegador: **GitHub → Actions → Stage npm package**. A primeira publicação exige um token npm temporário de **stage only** armazenado no Secret `NPM_STAGE_TOKEN`. As próximas versões usam Trusted Publishing (OIDC) sem token permanente. Cada versão passa por aprovação na interface do npm com 2FA.
65
-
66
- Confira o [guia completo de publicação via GitHub Actions](docs/PUBLISHING.md). Nenhuma publicação é disparada automaticamente por commits ou PRs.
67
-
68
70
  ## Desenvolvimento
69
71
 
70
72
  ```bash
package/package.json CHANGED
@@ -1,12 +1,20 @@
1
1
  {
2
2
  "name": "tabby-profile-share",
3
- "version": "0.1.3",
4
- "description": "Safe SSH profile sharing plugin for official Eugeny Tabby",
3
+ "version": "0.1.4",
4
+ "description": "Export, import and share SSH profiles and folder hierarchies in Tabby Terminal without sharing credentials or private keys.",
5
5
  "keywords": [
6
6
  "tabby-plugin",
7
7
  "tabby",
8
+ "tabby-terminal",
9
+ "terminal",
8
10
  "ssh",
9
- "profiles"
11
+ "ssh-profiles",
12
+ "ssh-connections",
13
+ "profile-sharing",
14
+ "profile-export",
15
+ "profile-import",
16
+ "connection-manager",
17
+ "ssh-profile-manager"
10
18
  ],
11
19
  "main": "dist/index.js",
12
20
  "types": "dist/index.d.ts",