instruckt 0.4.1 → 0.4.2
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/README.md +31 -19
- package/dist/instruckt.cjs.js +383 -155
- package/dist/instruckt.cjs.js.map +1 -1
- package/dist/instruckt.d.mts +9 -2
- package/dist/instruckt.d.ts +9 -2
- package/dist/instruckt.esm.js +383 -155
- package/dist/instruckt.esm.js.map +1 -1
- package/dist/instruckt.iife.js +71 -30
- package/dist/instruckt.iife.js.map +1 -1
- package/package.json +5 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# instruckt
|
|
2
2
|
|
|
3
|
-
Visual feedback tool for AI coding agents. Click on any element in your app, leave
|
|
3
|
+
Visual feedback tool for AI coding agents. Click on any element in your app, leave a note, and copy structured markdown to paste into your AI agent — no screenshots needed.
|
|
4
4
|
|
|
5
5
|
Framework-agnostic JS core with adapters for Livewire, Vue, Svelte, and React.
|
|
6
6
|
|
|
@@ -13,7 +13,7 @@ npm install instruckt
|
|
|
13
13
|
Or load via CDN:
|
|
14
14
|
|
|
15
15
|
```html
|
|
16
|
-
<script src="https://cdn.jsdelivr.net/npm/instruckt
|
|
16
|
+
<script src="https://cdn.jsdelivr.net/npm/instruckt/dist/instruckt.iife.js"></script>
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
## Quick Start
|
|
@@ -40,9 +40,25 @@ Or with the IIFE build:
|
|
|
40
40
|
1. A floating toolbar appears in your app
|
|
41
41
|
2. Press **A** or click the annotate button to enter annotation mode
|
|
42
42
|
3. Hover over any element — instruckt highlights it and detects its framework component
|
|
43
|
-
4. Click to annotate —
|
|
44
|
-
5.
|
|
45
|
-
6.
|
|
43
|
+
4. Click to annotate — type your feedback and save
|
|
44
|
+
5. Annotations auto-copy as structured markdown to your clipboard
|
|
45
|
+
6. Paste into any AI coding agent (Claude Code, Cursor, Codex, Copilot, OpenCode, etc.)
|
|
46
|
+
7. The agent reads the markdown and makes the requested code changes
|
|
47
|
+
|
|
48
|
+
### Example Output
|
|
49
|
+
|
|
50
|
+
```markdown
|
|
51
|
+
# UI Feedback: /auth/login
|
|
52
|
+
|
|
53
|
+
## 1. Change the submit button color to green
|
|
54
|
+
- Element: `button.btn-primary` in `pages::auth.login`
|
|
55
|
+
- Classes: `btn btn-primary`
|
|
56
|
+
- Text: "Submit Login"
|
|
57
|
+
|
|
58
|
+
## 2. Make the login card have rounded corners
|
|
59
|
+
- Element: `div.bg-white` in `pages::auth.login`
|
|
60
|
+
- Classes: `bg-white dark:bg-white/10 border`
|
|
61
|
+
```
|
|
46
62
|
|
|
47
63
|
## Configuration
|
|
48
64
|
|
|
@@ -62,8 +78,6 @@ new Instruckt({
|
|
|
62
78
|
|
|
63
79
|
// Callbacks
|
|
64
80
|
onAnnotationAdd: (annotation) => {},
|
|
65
|
-
onAnnotationResolve: (annotation) => {},
|
|
66
|
-
onSessionCreate: (session) => {},
|
|
67
81
|
})
|
|
68
82
|
```
|
|
69
83
|
|
|
@@ -72,17 +86,18 @@ new Instruckt({
|
|
|
72
86
|
| Key | Action |
|
|
73
87
|
|-----|--------|
|
|
74
88
|
| `A` | Toggle annotation mode |
|
|
75
|
-
| `F` | Freeze animations |
|
|
76
|
-
| `Esc` | Exit annotation mode |
|
|
89
|
+
| `F` | Freeze page (pause animations, block navigation) |
|
|
90
|
+
| `Esc` | Exit annotation/freeze mode |
|
|
77
91
|
|
|
78
92
|
## Features
|
|
79
93
|
|
|
80
|
-
- **Framework detection** — automatically identifies Livewire, Vue, Svelte, and React components
|
|
94
|
+
- **Framework detection** — automatically identifies Livewire, Vue, Svelte, and React components
|
|
81
95
|
- **Shadow DOM isolation** — all UI renders in shadow roots so it never conflicts with your styles
|
|
82
|
-
- **
|
|
83
|
-
- **
|
|
84
|
-
- **
|
|
85
|
-
- **
|
|
96
|
+
- **Copy as markdown** — annotations auto-copy as structured markdown optimized for AI agents
|
|
97
|
+
- **Freeze mode** — pause animations and block all navigation/interactions for stable annotation
|
|
98
|
+
- **Minimize** — collapse to a small floating button with annotation count badge
|
|
99
|
+
- **Page-scoped markers** — annotation pins only appear on the page where they were created
|
|
100
|
+
- **Livewire navigation** — survives `wire:navigate` page transitions
|
|
86
101
|
|
|
87
102
|
## Public API
|
|
88
103
|
|
|
@@ -90,9 +105,6 @@ new Instruckt({
|
|
|
90
105
|
// Get all annotations
|
|
91
106
|
instruckt.getAnnotations()
|
|
92
107
|
|
|
93
|
-
// Get current session
|
|
94
|
-
instruckt.getSession()
|
|
95
|
-
|
|
96
108
|
// Export open annotations as markdown
|
|
97
109
|
instruckt.exportMarkdown()
|
|
98
110
|
|
|
@@ -102,9 +114,9 @@ instruckt.destroy()
|
|
|
102
114
|
|
|
103
115
|
## Backend
|
|
104
116
|
|
|
105
|
-
instruckt needs a backend to persist annotations
|
|
117
|
+
instruckt needs a backend to persist annotations. The official Laravel package provides this out of the box:
|
|
106
118
|
|
|
107
|
-
- **[instruckt-laravel](https://github.com/joshcirre/instruckt-laravel)** — Laravel package with
|
|
119
|
+
- **[instruckt-laravel](https://github.com/joshcirre/instruckt-laravel)** — Laravel package with JSON file storage, MCP tools, Blade component, and API routes
|
|
108
120
|
|
|
109
121
|
## License
|
|
110
122
|
|