Important: we are migrating to a new Discord server .gg/avdanos
This repo aims to be a JavaScript environment where AvdanOS extensions can run.
- ES Module Support ✅
- External Modules ⏲️
- API
- OS Integration
- Clipboard Access ✅
- File System Access ⏲️
- Network Access ⏲️
- OS Integration
- 🧑💻
git clone
this repo.
-
🔨 Run
cargo build && ./target/debug/proj ./test/clipboard
to run a rudimentary sample extension. -
📋 Paste the contents of your clipboard.
- 🔨 Run
cargo build && ./target/debug/proj ./test/module1
to run a rudimentary sample extension.
The security policy of a particular extension is defined in the security
section of its manifest.avdan.json
file.
An extension's security policy determines the various actions the extension can make.
In security.permissions
, the manifest can outline which API features the extension wishes to use.
If an extension tries to use an API feature which has not been declared, a SecurityException
is thrown.
Similarly, if an extension uses external commands, they must also be declared in the manifest security.commands
.
avdan
│
├───clipboard
│ │
│ ├--- read --- Reading of the contents of any clipboard.
│ ├--- write --- Modifying/Writing to the contents of any clipboard.
│ ├--- type --- Sending keystrokes.
│
├───file
│ │
│ ├--- read --- Reading from a file.
│ ├--- write --- Writing to a file.
- xclip
- xdotool