Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/heyputer/yaet
Yet Another Electron Terminal
https://github.com/heyputer/yaet
electron javascript linux node-js nodejs terminal terminal-emulator typescript xterm-js xtermjs
Last synced: 2 months ago
JSON representation
Yet Another Electron Terminal
- Host: GitHub
- URL: https://github.com/heyputer/yaet
- Owner: HeyPuter
- License: mit
- Created: 2024-07-22T03:22:51.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-23T19:41:08.000Z (6 months ago)
- Last Synced: 2024-07-24T03:13:47.223Z (6 months ago)
- Topics: electron, javascript, linux, node-js, nodejs, terminal, terminal-emulator, typescript, xterm-js, xtermjs
- Language: JavaScript
- Homepage:
- Size: 446 KB
- Stars: 13
- Watchers: 3
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
YAET
YAET: Another Terminal Emulator
YAET is a terminal that can display web pages.
### ❓ What is this?
YAET is a terminal emulator built on Xterm.js and Electron.
It can interpret escape sequences that allow shell scripts and other programs to write HTML content directly to the terminal, or display content from the web.### ⚠️ Security Implications
This application is **experimental** and you should only use it with scripts and programs
that you trust. While the security mechanisms in Chromium will prevent the iframe from
doing anything crazy of its own accord, it's important to be mindful of
**click-jacking**, **tracking the client**, and any **vulnerabilities** that might be
discovered in the future.- See [Security.md](./doc/Security.md) for more information.
- See [PostMessageAPI.md](./doc/PostMessageAPI.md) to see what/when
communication is allowed to/from iframes.
### 📦 Setup
You will need to run `npm install`. You may also need to run `electron-rebuild`
within `src/application`.```
npm install
cd src/application
npx electron-rebuild -f -w node-pty
cd -
```You will need to run `rollup` inside `src/terminal`.
```
cd src/terminal
rollup -c rollup.config.js --watch
```
### ▶️ Run
After following the steps above, running `npm start`
inside `src/application` should launch YAET.```
cd src/application
npm run start
```
### 📚 Docs
- [Configuring YAET](./doc/Configuration.md)
- [YAET OSC Extensions](./doc/OSC.md)
### 🌐 Similar Projects
- [DomTerm](https://domterm.org/Wire-byte-protocol.html)
can also render HTML via [an escape sequence](https://domterm.org/Wire-byte-protocol.html).
This terminal emulator is more mature than YAET, so if you're looking for a daily driver
this might be a better choice.