Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/buntralino/buntralino-client
Neutralino.js library for Buntralino. Buntralino unites Bun and Neutralino.js to make a simpler, lighter alternative to Electron and NW.js. Use Neutralino.js API at client and send harder tasks to Bun while keeping your development process easy.
https://github.com/buntralino/buntralino-client
bun cross-platform cross-platform-development neutralino xpda
Last synced: 9 days ago
JSON representation
Neutralino.js library for Buntralino. Buntralino unites Bun and Neutralino.js to make a simpler, lighter alternative to Electron and NW.js. Use Neutralino.js API at client and send harder tasks to Bun while keeping your development process easy.
- Host: GitHub
- URL: https://github.com/buntralino/buntralino-client
- Owner: buntralino
- License: mit
- Created: 2024-12-12T08:44:29.000Z (23 days ago)
- Default Branch: master
- Last Pushed: 2024-12-23T16:21:10.000Z (11 days ago)
- Last Synced: 2024-12-23T17:28:25.616Z (11 days ago)
- Topics: bun, cross-platform, cross-platform-development, neutralino, xpda
- Language: TypeScript
- Homepage: https://buntralino.github.io/
- Size: 21.5 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
![Buntralino logo](https://buntralino.github.io/Buntralino.png)
# Buntralino library for the Neutralino side
Buntralino unites Bun and Neutralino.js to make a simpler, lighter alternative to Electron and NW.js. Use Neutralino.js API at client and send harder tasks to Bun while keeping your development process easy.
Buntralino is a hybrid app development framework that lets you use web technologies (HTML, CSS, JavaScript, TypeScript) to make desktop apps. Buntralino applications work by creating a Bun application that launches and manages Neutralino.js windows. Neutralino.js windows can exchange information with Bun and each other in a client-server model through websockets, with you using a nice promise-based API. Bun is a faster alternative to Node.js or Deno, while Neutralino.js uses native OS' browser and augments it with native functions.
## Usage
```sh
bun install --save buntralino-client # or use your package manager of choice
``````typescript
import * as buntralino from 'buntralino-client'; // Automatically connects to Bun!// Wait till the connection to Bun is up
await buntralino.ready;// Call a method added on Bun side with buntralino.registerMethod
const updates = await buntralino.run('loadUpdates');// Call a method with options (must be a JSON-serializable object)
await buntralino.run('downloadFile', {
src: 'https://secret.bunnies.io/builds/windows.exe',
dest: 'dependencies/secretBunnies.exe'
});// Send an event to all Neutralino instances
buntralino.broadcast('eventName', {
customData: 'moo'
});
// Send an event to a specific Neutralino window
buntralino.sendEvent('main', 'loginSuccessful', {
username: 'Doofus3000'
});// Listen to events through Neutralino API:
Neutralino.events.on('loginSuccessful', e => {
const {username} = e.detail;
console.log(`Logged in as ${username}!`);
});setTimeout(() => {
// Close ALL windows and exit the Buntralino app
buntralino.shutdown();
}, 10_000);
```## Development
```sh
git clone https://github.com/CosmoMyzrailGorynych/buntralino-client.git
cd ./buntralino-client
bun install
# And you're ready to code! Use `bun run build` to compile sources.
```