You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<ahref="https://console.dev"title="Visit Console - the best tools for developers"><imgsrc="https://console.dev/img/badges/1.0/svg/console-badge-logo-dark.svg"alt="Console - Developer Tool of the Week" /></a>
15
12
16
13
<palign="center">
@@ -34,7 +31,16 @@ for detailed documentation and tutorials
34
31
It allows for native UI interactions via keyboard and / or mouse,
35
32
but additionally gives you the possibility to navigate the screen based on image matching.
36
33
37
-
# Sponsoring
34
+
# The Price of Open Source
35
+
36
+
If you came here after I removed public packages from npm as announced
37
+
in ['the blog post'](https://nutjs.dev/blog/i-give-up), please be aware that
38
+
39
+
- nut.js is still open source (you are right here, aren't you?)
40
+
- nut.js is still free to use, you'll just have to build it from sources
41
+
- nut.js is still maintained and developed further
42
+
- nut.js does not force anyone to pay anything, because you can even build every single plugin yourself. It's just
43
+
interfaces to implement
38
44
39
45
`nut.js` is developed with community in mind.
40
46
@@ -48,11 +54,13 @@ Check out this demo video to get a first impression of what nut.js is capable of
48
54
49
55
# Tutorials
50
56
51
-
Please consult the project website at [nutjs.dev](https://nutjs.dev/tutorials/first_steps#prerequisites) for in-depth tutorials
57
+
Please consult the project website at [nutjs.dev](https://nutjs.dev/tutorials/first_steps#prerequisites) for in-depth
58
+
tutorials
52
59
53
60
# API Docs
54
61
55
-
nut.js provides [public API documentation](https://nut-tree.github.io/apidoc/) auto-generated by [TypeDoc](https://typedoc.org).
62
+
nut.js provides [public API documentation](https://nut-tree.github.io/apidoc/) auto-generated
63
+
by [TypeDoc](https://typedoc.org).
56
64
57
65
# Community
58
66
@@ -89,13 +97,19 @@ It's work in progress and will undergo constant modification.
89
97
-[x] Focus window
90
98
-[x] Resize window
91
99
-[x] Reposition window
100
+
-[x] Minimize a window (\*)
101
+
-[x] Restore a window (\*)
102
+
-[x] Inspect GUI elements of a window (\*)
103
+
-[x] Search for specific GUI elements of a window (\*)
92
104
93
105
## Screen
94
106
95
107
-[x] Retrieve RGBA color information on screen
96
108
-[x] Highlighting screen regions
97
-
-[x] Find a single or multiple occurrences of an image on screen (requires an additional provider package like e.g. [nut-tree/template-matcher](https://www.npmjs.com/package/@nut-tree/template-matcher))
98
-
-[x] Wait for an image to appear on screen (requires an additional provider package like e.g. [nut-tree/template-matcher](https://www.npmjs.com/package/@nut-tree/template-matcher))
109
+
-[x] Find a single or multiple occurrences of an image on screen (requires an additional provider package like
110
+
e.g. [nut-tree/template-matcher](https://www.npmjs.com/package/@nut-tree/template-matcher))
111
+
-[x] Wait for an image to appear on screen (requires an additional provider package like
112
+
e.g. [nut-tree/template-matcher](https://www.npmjs.com/package/@nut-tree/template-matcher))
99
113
-[x] Find a single or multiple occurrences of text on screen (\*)
100
114
-[x] Wait for a piece of text to appear on screen (\*)
101
115
-[x] Find a single or multiple windows on screen (\*)
@@ -169,7 +183,10 @@ This section lists runtime requirements for `nut.js` on the respective target pl
169
183
170
184
#### Windows
171
185
172
-
In case you're running Windows 10 N and want to use [ImageFinder plugins](https://nutjs.dev/plugins/imagefinder), please make sure to have the [Media Feature Pack](https://support.microsoft.com/en-us/topic/media-feature-pack-for-windows-10-n-may-2020-ebbdf559-b84c-0fc2-bd51-e23c9f6a4439) installed.
186
+
In case you're running Windows 10 N and want to use [ImageFinder plugins](https://nutjs.dev/plugins/imagefinder), please
187
+
make sure to have
188
+
the [Media Feature Pack](https://support.microsoft.com/en-us/topic/media-feature-pack-for-windows-10-n-may-2020-ebbdf559-b84c-0fc2-bd51-e23c9f6a4439)
189
+
installed.
173
190
174
191
#### macOS
175
192
@@ -182,7 +199,8 @@ xcode-select --install
182
199
183
200
**Permissions**:
184
201
185
-
nut.js requires the executing application, e.g. your terminal, to be given both `Accessibility` and `Screen Recording` permissions.
202
+
nut.js requires the executing application, e.g. your terminal, to be given both `Accessibility` and `Screen Recording`
203
+
permissions.
186
204
187
205
Starting with release `2.3.0`, nut.js will check for and request these permissions automatically:
188
206
@@ -192,8 +210,12 @@ Starting with release `2.3.0`, nut.js will check for and request these permissio
192
210
193
211
It will also give you a subtle hint in case permissions are lacking:
194
212
195
-
- Accessibility: `##### WARNING! The application running this script is not a trusted process! Please visit https://github.com/nut-tree/nut.js#macos #####`
196
-
- Screen Recording: `##### WARNING! The application running this script is not allowed to capture screen content! Please visit https://github.com/nut-tree/nut.js#macos #####`
213
+
-
214
+
215
+
Accessibility: `##### WARNING! The application running this script is not a trusted process! Please visit https://github.com/nut-tree/nut.js#macos #####`
216
+
217
+
- Screen
218
+
Recording: `##### WARNING! The application running this script is not allowed to capture screen content! Please visit https://github.com/nut-tree/nut.js#macos #####`
197
219
198
220
**Attention**:
199
221
@@ -234,7 +256,27 @@ On e.g. Ubuntu you can switch to XWayland on your login screen as a workaround.
234
256
235
257
## Install `nut.js`
236
258
237
-
Running
259
+
### Open Source
260
+
261
+
The core functionality of `nut.js` is open source and available on GitHub.
262
+
263
+
To build nut.js from source you'll have to build native dependencies first.
264
+
265
+
- Start with [@nut-tree/libnut-core](https://github.com/nut-tree/libnut-core)
266
+
- A build pipeline can be found in the respective repository
267
+
- Update dependencies in `nut.js` to point to your local build of `libnut-core`
268
+
- A build pipeline can be found in the respective repository
269
+
270
+
### Pre-built packages
271
+
272
+
Pre-built packages are available for subscription plans.
273
+
274
+
Check out the [pricing page](https://nutjs.dev/pricing/pricing) for more information.
275
+
276
+
Once you subscribed to a plan, you'll receive a token which you can use to install the respective
277
+
package, [check out the registry access tutorial for reference](https://nutjs.dev/tutorials/registry-access).
0 commit comments