@journeeze/sdk 0.1.0-rc.3 → 0.1.0

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.
Files changed (2) hide show
  1. package/README.md +75 -5
  2. package/package.json +10 -2
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @journeeze/sdk
2
2
 
3
+ [Website & early access](https://journeeze.dev) · [Review board](https://app.journeeze.dev) · [npm](https://www.npmjs.com/package/@journeeze/sdk)
4
+
5
+ ## What is Journeeze?
6
+
3
7
  Journeeze adds in-app help and an opt-in feedback mode to any website or app. Visitors read
4
8
  step-by-step guides built from your documented user journeys, and invited reviewers (or signed-in
5
9
  users) point at what is unclear. Journeeze groups that feedback and files it as GitHub issues in
@@ -8,6 +12,19 @@ your repository.
8
12
  The SDK is a small loader (about 2 KB gzipped). Nothing observes the page until help or the
9
13
  feedback mode is switched on, and nothing is captured before the visitor consents.
10
14
 
15
+ ### Built on Jevitate journeys
16
+
17
+ Journeeze builds on [Jevitate](https://jevitate.com), the
18
+ [MIT-licensed, open-source browser testing and journey tool](https://github.com/matt-cochran/jevitate).
19
+ Jevitate explores your app, verifies flows in a real browser, and produces replayable journeys
20
+ and step-by-step guides. Journeeze brings those journeys into your live app as help, then adds
21
+ human feedback about what people understood and where they got stuck.
22
+
23
+ Use Jevitate to author and verify your journeys; connect their `.jevitate/` catalog to Journeeze
24
+ to import guides, review them and publish them for your users. See [Connect GitHub](#connect-github)
25
+ for the catalog connection and CI upload option. You can use Jevitate independently of Journeeze.
26
+ Journeeze and this SDK have their own [service license](#versions-and-license).
27
+
11
28
  **Contents:** [Before you start](#before-you-start) · [Install](#install) ·
12
29
  [Environments](#environments-and-apihost) · [Content Security Policy](#content-security-policy) ·
13
30
  [Signed-in users](#signed-in-users) · [Privacy and masking](#privacy-and-masking) ·
@@ -15,9 +32,59 @@ feedback mode is switched on, and nothing is captured before the visitor consent
15
32
  [GitHub](#connect-github) · [Checklist](#setup-checklist) ·
16
33
  [Troubleshooting](#troubleshooting) · [Versions](#versions-and-license)
17
34
 
35
+ ## Quick start: your first feedback
36
+
37
+ This package connects your website or web app to the hosted Journeeze service. Installing it
38
+ does not create an account or publish guides. Visit [journeeze.dev](https://journeeze.dev) for
39
+ product information and early access, then get a site key and register your app's origins with
40
+ the Journeeze team ([Before you start](#before-you-start)).
41
+
42
+ With your production site key:
43
+
44
+ ```sh
45
+ npm install @journeeze/sdk@rc --save-exact
46
+ ```
47
+
48
+ `rc` selects the current release candidate; `--save-exact` pins the resolved version. Commit your
49
+ lockfile for repeatable installs. Add a button to your page:
50
+
51
+ ```html
52
+ <button id="send-feedback" type="button">Send feedback</button>
53
+ ```
54
+
55
+ Run this in your browser entry point after the button exists:
56
+
57
+ ```ts
58
+ import { createJourneeze } from "@journeeze/sdk";
59
+
60
+ const journeeze = createJourneeze({
61
+ siteKey: "pk_REPLACE_WITH_YOUR_SITE_KEY",
62
+ pagePath: "none",
63
+ });
64
+
65
+ document.querySelector("#send-feedback")?.addEventListener("click", () => {
66
+ void journeeze.enable();
67
+ });
68
+ ```
69
+
70
+ For a staging site key, also set `apiHost: "https://app.staging.journeeze.dev"`; see
71
+ [Environments](#environments-and-apihost). Mark customer content with `data-jz-mask` before testing.
72
+
73
+ 1. Open your registered app origin and click **Send feedback**.
74
+ 2. Accept the consent prompt, select an element and submit a comment. Anonymous visitors can
75
+ submit feedback; screenshots require [signed-in users](#signed-in-users).
76
+ 3. Open your project's [review board](https://app.journeeze.dev) using your owner invite and
77
+ confirm the report arrived. Triage related reports, group them into clusters, then file a
78
+ cluster as a GitHub issue once your [GitHub App is connected](#connect-github).
79
+
80
+ To add guided help, publish a guide and enable help for your site's audience on the board, then
81
+ call `journeeze.enableHelp()`. See [In-app help](#in-app-help) for element anchors and journey context.
82
+ For React or a site without a bundler, use the examples under [Install](#install).
83
+
18
84
  ## Before you start
19
85
 
20
- Journeeze is in early access. The Journeeze team sets up your account. Send them:
86
+ Journeeze is in early access. Start at [journeeze.dev](https://journeeze.dev).
87
+ The Journeeze team sets up your account. Send them:
21
88
 
22
89
  1. Your organisation and product name.
23
90
  2. Every origin the SDK will run on, with scheme, host and port. Example:
@@ -41,11 +108,13 @@ Pick one way. Both load the same code.
41
108
  ### npm (bundled apps)
42
109
 
43
110
  ```sh
44
- npm install @journeeze/sdk@0.1.0-rc.3 --save-exact
111
+ npm install @journeeze/sdk@rc --save-exact
45
112
  ```
46
113
 
47
- Pin an exact version. Release candidates (`-rc.N`) are on the `rc` tag; stable releases on
48
- `latest`.
114
+ The command resolves `rc` and pins that exact version. To choose a particular release, use
115
+ `npm install @journeeze/sdk@<version> --save-exact`. Release candidates (`-rc.N`) are on the `rc`
116
+ tag; stable releases use `latest`. Check the package's version tags before choosing a channel:
117
+ an unqualified `npm install @journeeze/sdk` can select an older version than `rc`.
49
118
 
50
119
  **React:**
51
120
 
@@ -60,6 +129,7 @@ export function Root() {
60
129
  context={{ persona: "owner", journeyId: "billing", journeyStep: "route.billing.pay" }}
61
130
  pagePath="none" // you pass route ids as journeyStep
62
131
  >
132
+ <HelpButton />
63
133
  <App />
64
134
  </JourneezeProvider>
65
135
  );
@@ -294,7 +364,7 @@ filing.
294
364
  **After installing, tell the Journeeze team.** They link the repository to your project. This is
295
365
  one step on their side until the board does it for you.
296
366
 
297
- **Your journey catalog.** Journeeze reads the Jevitate catalog in your repository's `.jevitate/`
367
+ **Your journey catalog.** Journeeze reads the [Jevitate](https://jevitate.com) catalog in your repository's `.jevitate/`
298
368
  folder (personas, jobs and journeys) on each push. Guides with screenshots and video are imported
299
369
  from your approved journeys as drafts. A triager reviews each one on the board (**Journeys**), may
300
370
  lightly edit the step text, and publishes it. Only published guides appear in help.
package/package.json CHANGED
@@ -1,7 +1,15 @@
1
1
  {
2
2
  "name": "@journeeze/sdk",
3
- "version": "0.1.0-rc.3",
4
- "description": "Journeeze feedback mode: a tiny loader that lazy-loads the widget when the mode is switched on.",
3
+ "version": "0.1.0",
4
+ "description": "In-app help and opt-in, element-anchored feedback for your web app, with triage and GitHub issues through Journeeze.",
5
+ "homepage": "https://journeeze.dev",
6
+ "keywords": [
7
+ "journeeze",
8
+ "feedback",
9
+ "in-app-help",
10
+ "user-feedback",
11
+ "github-issues"
12
+ ],
5
13
  "license": "SEE LICENSE IN LICENSE.md",
6
14
  "publishConfig": {
7
15
  "registry": "https://registry.npmjs.org/",