buntralino
v1.0.10
Published
Bun 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.
Downloads
626
Maintainers
Readme
Buntralino library for the Bun 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
bun install --save buntralino
import * as buntralino from 'buntralino';
/**
* Function map that allows running named functions with `buntralino.run` on the client (Neutralino) side.
*/
const functionMap = {
sayHello: async (payload: {
message: string
}) => {
await Bun.sleep(1000);
return `Bun says "${payload.message}"!`;
}
};
buntralino.registerMethodMap(functionMap);
// or buntralino.registerMethod('sayHello', functionMap.sayHello);
await buntralino.create('/', {
// Name windows to easily manipulate them and distinguish them in events
name: 'main'
// Any options for Neutralino.window.create can go here
});
// Exit the app completely when the main window is closed without the `shutdown` command.
buntralino.events.on('close', (windowName: string) => {
if (windowName === 'main') {
// eslint-disable-next-line no-process-exit
process.exit();
}
});
Docs on all the functions coming SOON! But the sources are readable and straightforward, you can read them in window.ts
.
Development
git clone https://github.com/CosmoMyzrailGorynych/buntralino.git
cd ./buntralino
bun install
# And you're ready to code!