|
2 | 2 | import { Button } from "$lib/components/ui/button"; |
3 | 3 | import { Separator } from "$lib/components/ui/separator"; |
4 | 4 | import AlertTriangle from "@lucide/svelte/icons/alert-triangle"; |
| 5 | + import ChevronRight from "@lucide/svelte/icons/chevron-right"; |
5 | 6 | import Download from "@lucide/svelte/icons/download"; |
6 | 7 | import ExternalLink from "@lucide/svelte/icons/external-link"; |
7 | | - import Folder from "@lucide/svelte/icons/folder"; |
8 | | - import Trash2 from "@lucide/svelte/icons/trash-2"; |
| 8 | + import Store from "@lucide/svelte/icons/store"; |
9 | 9 | </script> |
10 | 10 |
|
11 | 11 | <svelte:head> |
|
15 | 15 | content="Install the HapticWeb plugin for MX Master 4 haptic feedback." /> |
16 | 16 | </svelte:head> |
17 | 17 |
|
18 | | -<div class="max-w-6xl mx-auto px-4 py-12"> |
| 18 | +<div class="max-w-4xl mx-auto px-4 py-12"> |
19 | 19 | <!-- Header --> |
20 | 20 | <div class="space-y-4 mb-12"> |
21 | 21 | <h1 class="text-4xl font-bold">Install HapticWeb Plugin</h1> |
22 | 22 | <p class="text-lg text-muted-foreground"> |
23 | | - Get the plugin running in under a minute. Just download, double-click, and |
24 | | - you're ready. |
| 23 | + Get the plugin running in under a minute. |
25 | 24 | </p> |
26 | 25 | </div> |
27 | 26 |
|
|
32 | 31 | <div class="p-4 rounded-lg border border-border bg-card flex gap-4"> |
33 | 32 | <img |
34 | 33 | src="/mx-master4.webp" |
35 | | - alt="MX Master 4" |
| 34 | + alt="" |
| 35 | + width="64" |
| 36 | + height="64" |
36 | 37 | class="w-16 h-16 object-contain" /> |
37 | 38 | <div> |
38 | 39 | <h3 class="font-medium">Logitech MX Master 4</h3> |
|
44 | 45 | <div class="p-4 rounded-lg border border-border bg-card flex gap-4"> |
45 | 46 | <img |
46 | 47 | src="/options-plus.png" |
47 | | - alt="Logi Options+" |
| 48 | + alt="" |
| 49 | + width="64" |
| 50 | + height="64" |
48 | 51 | class="w-16 h-16 object-contain" /> |
49 | 52 | <div> |
50 | 53 | <h3 class="font-medium">Logi Options+</h3> |
|
65 | 68 |
|
66 | 69 | <Separator class="mb-12" /> |
67 | 70 |
|
68 | | - <!-- Installation Steps --> |
| 71 | + <!-- Marketplace Installation --> |
69 | 72 | <section class="mb-12"> |
70 | 73 | <h2 class="text-2xl font-semibold mb-6">Installation</h2> |
71 | 74 |
|
72 | | - <div class="space-y-6"> |
73 | | - <!-- Step 1 --> |
74 | | - <div class="flex gap-4"> |
| 75 | + <a |
| 76 | + href="https://marketplace.logi.com/plugin/HapticWeb/en" |
| 77 | + target="_blank" |
| 78 | + rel="noopener noreferrer" |
| 79 | + class="group block p-6 rounded-xl border border-primary/30 bg-primary/5 hover:bg-primary/10 transition-colors"> |
| 80 | + <div class="flex items-center gap-4"> |
75 | 81 | <div |
76 | | - class="shrink-0 w-8 h-8 rounded-full bg-primary/20 flex items-center justify-center text-primary font-semibold"> |
77 | | - 1 |
| 82 | + class="shrink-0 w-12 h-12 rounded-lg bg-primary/20 flex items-center justify-center"> |
| 83 | + <Store class="w-6 h-6 text-primary" /> |
78 | 84 | </div> |
79 | | - <div class="flex-1 space-y-3"> |
80 | | - <h3 class="font-medium">Download the plugin</h3> |
81 | | - <p class="text-sm text-muted-foreground"> |
82 | | - Get the latest |
83 | | - <code class="px-1.5 py-0.5 rounded bg-muted text-foreground"> |
84 | | - HapticWeb.lplug4 |
85 | | - </code> |
86 | | - file from GitHub Releases. |
| 85 | + <div class="flex-1"> |
| 86 | + <h3 class="text-lg font-medium group-hover:text-primary transition-colors"> |
| 87 | + Install from the Logitech Marketplace |
| 88 | + </h3> |
| 89 | + <p class="text-sm text-muted-foreground mt-1"> |
| 90 | + Open Logi Options+, go to your MX Master 4's <strong>Haptic Feedback</strong> settings, and find HapticWeb in the marketplace. |
87 | 91 | </p> |
88 | | - <Button |
89 | | - href="https://github.com/fallstop/HapticWebPlugin/releases/latest/download/HapticWeb.lplug4" |
90 | | - variant="outline" |
91 | | - size="sm"> |
92 | | - <Download class="w-4 h-4 mr-2" /> |
93 | | - Download HapticWeb.lplug4 |
94 | | - </Button> |
95 | 92 | </div> |
| 93 | + <ExternalLink class="w-5 h-5 text-muted-foreground shrink-0" /> |
96 | 94 | </div> |
| 95 | + </a> |
| 96 | + </section> |
97 | 97 |
|
98 | | - <!-- Step 2 --> |
99 | | - <div class="flex gap-4"> |
100 | | - <div |
101 | | - class="shrink-0 w-8 h-8 rounded-full bg-primary/20 flex items-center justify-center text-primary font-semibold"> |
102 | | - 2 |
103 | | - </div> |
104 | | - <div class="flex-1 space-y-3"> |
105 | | - <h3 class="font-medium">Open plugin management in Logi Options+</h3> |
106 | | - <p class="text-sm text-muted-foreground"> |
107 | | - Open Logi Options+ → Click on your MX Master 4 → Go to <strong |
108 | | - >HAPTIC FEEDBACK</strong> |
109 | | - in the sidebar → Click the settings popover → Click |
110 | | - <strong>INSTALL AND UNINSTALL PLUGINS</strong>. |
111 | | - </p> |
112 | | - </div> |
113 | | - </div> |
| 98 | + <!-- Manual Installation (collapsed feel) --> |
| 99 | + <section class="mb-12"> |
| 100 | + <h2 class="text-xl font-semibold mb-4 text-muted-foreground">Manual Installation</h2> |
114 | 101 |
|
115 | | - <!-- Step 3 --> |
116 | | - <div class="flex gap-4"> |
117 | | - <div |
118 | | - class="shrink-0 w-8 h-8 rounded-full bg-primary/20 flex items-center justify-center text-primary font-semibold"> |
119 | | - 3 |
| 102 | + <div class="rounded-xl border border-border bg-card p-6"> |
| 103 | + <div class="space-y-5"> |
| 104 | + <!-- Step 1 --> |
| 105 | + <div class="flex gap-3"> |
| 106 | + <div |
| 107 | + class="shrink-0 w-7 h-7 rounded-full bg-primary/15 flex items-center justify-center text-primary text-sm font-semibold"> |
| 108 | + 1 |
| 109 | + </div> |
| 110 | + <div class="flex-1 space-y-2"> |
| 111 | + <h3 class="font-medium text-sm">Download the plugin</h3> |
| 112 | + <p class="text-sm text-muted-foreground"> |
| 113 | + Get the latest |
| 114 | + <code class="px-1.5 py-0.5 rounded bg-muted text-foreground text-xs">HapticWeb.lplug4</code> |
| 115 | + from GitHub Releases. |
| 116 | + </p> |
| 117 | + <Button |
| 118 | + href="https://github.com/fallstop/HapticWebPlugin/releases/latest/download/HapticWeb.lplug4" |
| 119 | + variant="outline" |
| 120 | + size="sm"> |
| 121 | + <Download class="w-4 h-4 mr-1" /> |
| 122 | + Download HapticWeb.lplug4 |
| 123 | + </Button> |
| 124 | + </div> |
120 | 125 | </div> |
121 | | - <div class="flex-1 space-y-3"> |
122 | | - <h3 class="font-medium">Install the plugin</h3> |
123 | | - <p class="text-sm text-muted-foreground"> |
124 | | - Double-click the downloaded <code |
125 | | - class="px-1.5 py-0.5 rounded bg-muted text-foreground" |
126 | | - >HapticWeb.lplug4</code> |
127 | | - file. Logi Options+ will show an installation dialog — click |
128 | | - <strong>Continue</strong>. |
129 | | - </p> |
| 126 | + |
| 127 | + <Separator /> |
| 128 | + |
| 129 | + <!-- Step 2 --> |
| 130 | + <div class="flex gap-3"> |
| 131 | + <div |
| 132 | + class="shrink-0 w-7 h-7 rounded-full bg-primary/15 flex items-center justify-center text-primary text-sm font-semibold"> |
| 133 | + 2 |
| 134 | + </div> |
| 135 | + <div class="flex-1"> |
| 136 | + <h3 class="font-medium text-sm">Open plugin management</h3> |
| 137 | + <p class="text-sm text-muted-foreground mt-1"> |
| 138 | + Logi Options+ <ChevronRight class="w-3 h-3 inline" /> MX Master 4 <ChevronRight class="w-3 h-3 inline" /> |
| 139 | + <strong>Haptic Feedback</strong> <ChevronRight class="w-3 h-3 inline" /> Settings popover <ChevronRight class="w-3 h-3 inline" /> |
| 140 | + <strong>Install and Uninstall Plugins</strong> |
| 141 | + </p> |
| 142 | + </div> |
130 | 143 | </div> |
131 | | - </div> |
132 | 144 |
|
133 | | - <!-- Step 4 --> |
134 | | - <div class="flex gap-4"> |
135 | | - <div |
136 | | - class="shrink-0 w-8 h-8 rounded-full bg-green-500/20 flex items-center justify-center text-green-500 font-semibold"> |
137 | | - 4 |
| 145 | + <Separator /> |
| 146 | + |
| 147 | + <!-- Step 3 --> |
| 148 | + <div class="flex gap-3"> |
| 149 | + <div |
| 150 | + class="shrink-0 w-7 h-7 rounded-full bg-primary/15 flex items-center justify-center text-primary text-sm font-semibold"> |
| 151 | + 3 |
| 152 | + </div> |
| 153 | + <div class="flex-1"> |
| 154 | + <h3 class="font-medium text-sm">Install the plugin</h3> |
| 155 | + <p class="text-sm text-muted-foreground mt-1"> |
| 156 | + Double-click the downloaded |
| 157 | + <code class="px-1.5 py-0.5 rounded bg-muted text-foreground text-xs">HapticWeb.lplug4</code> |
| 158 | + file and click <strong>Continue</strong> in the dialog. |
| 159 | + </p> |
| 160 | + </div> |
138 | 161 | </div> |
139 | | - <div class="flex-1 space-y-3"> |
140 | | - <h3 class="font-medium">Done!</h3> |
141 | | - <p class="text-sm text-muted-foreground"> |
142 | | - The server starts automatically at <code |
143 | | - class="px-1.5 py-0.5 rounded bg-muted text-foreground" |
144 | | - >https://local.jmw.nz:41443/</code |
145 | | - >. Test it on the |
146 | | - <a href="/playground" class="text-primary hover:underline" |
147 | | - >Playground</a |
148 | | - >. |
149 | | - </p> |
| 162 | + |
| 163 | + <Separator /> |
| 164 | + |
| 165 | + <!-- Step 4 --> |
| 166 | + <div class="flex gap-3"> |
| 167 | + <div |
| 168 | + class="shrink-0 w-7 h-7 rounded-full bg-green-500/15 flex items-center justify-center text-green-500 text-sm font-semibold"> |
| 169 | + 4 |
| 170 | + </div> |
| 171 | + <div class="flex-1"> |
| 172 | + <h3 class="font-medium text-sm">Done!</h3> |
| 173 | + <p class="text-sm text-muted-foreground mt-1"> |
| 174 | + The server starts automatically at |
| 175 | + <code class="px-1.5 py-0.5 rounded bg-muted text-foreground text-xs">https://local.jmw.nz:41443/</code>. |
| 176 | + Test it on the |
| 177 | + <a href="/playground" class="text-primary hover:underline">Playground</a>. |
| 178 | + </p> |
| 179 | + </div> |
150 | 180 | </div> |
151 | 181 | </div> |
152 | 182 | </div> |
|
176 | 206 |
|
177 | 207 | <Separator class="mb-12" /> |
178 | 208 |
|
179 | | - <!-- Uninstalling --> |
180 | | - <section class="mb-12"> |
181 | | - <h2 class="text-2xl font-semibold mb-6 flex items-center gap-2"> |
182 | | - <Trash2 class="w-5 h-5" /> |
183 | | - Uninstalling |
184 | | - </h2> |
185 | | - <p class="text-muted-foreground mb-4"> |
186 | | - Manually installed plugins don't appear in Logi Options+ plugin list. To |
187 | | - uninstall, delete the plugin folder: |
188 | | - </p> |
189 | | - |
190 | | - <div class="space-y-3"> |
191 | | - <div class="p-3 rounded-lg bg-muted font-mono text-sm"> |
192 | | - <div class="flex items-center gap-2 text-muted-foreground mb-1"> |
193 | | - <Folder class="w-4 h-4" /> |
194 | | - <span class="font-sans text-xs">Windows</span> |
195 | | - </div> |
196 | | - C:\Users\USERNAME\AppData\Local\Logi\LogiPluginService\Plugins\HapticWebPlugin\ |
197 | | - </div> |
198 | | - |
199 | | - <div class="p-3 rounded-lg bg-muted font-mono text-sm"> |
200 | | - <div class="flex items-center gap-2 text-muted-foreground mb-1"> |
201 | | - <Folder class="w-4 h-4" /> |
202 | | - <span class="font-sans text-xs">macOS</span> |
203 | | - </div> |
204 | | - ~/Library/Application Support/Logi/LogiPluginService/Plugins/HapticWebPlugin/ |
205 | | - </div> |
206 | | - </div> |
207 | | - </section> |
208 | | - |
209 | | - <Separator class="mb-12" /> |
210 | | - |
211 | 209 | <!-- Troubleshooting --> |
212 | 210 | <section> |
213 | 211 | <h2 class="text-2xl font-semibold mb-6 flex items-center gap-2"> |
|
0 commit comments