All Projects β†’ webview β†’ Webview_deno

webview / Webview_deno

Licence: mit
🌐 Deno bindings for webview, a tiny library for creating web-based desktop GUIs

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Webview deno

Tether
πŸ–₯ A barebones Electron-ish library for Rust.
Stars: ✭ 151 (-79.29%)
Mutual labels:  gui, webview
Kanban App
Kanban board built with Rust and Elm
Stars: ✭ 1,711 (+134.71%)
Mutual labels:  gui, webview
Jsbridge
A simpler, extendable bidirectional communication Frame between Android WebView and Javascript
Stars: ✭ 612 (-16.05%)
Mutual labels:  webview
Openlabeling
Label images and video for Computer Vision applications
Stars: ✭ 706 (-3.16%)
Mutual labels:  gui
Social Amnesia
Forget the past. Social Amnesia makes sure your social media accounts only show your posts from recent history, not from "that phase" 5 years ago.
Stars: ✭ 656 (-10.01%)
Mutual labels:  gui
Walk
A Windows GUI toolkit for the Go Programming Language
Stars: ✭ 5,813 (+697.39%)
Mutual labels:  gui
Goggles
πŸ”­ Goggles is a cross-platform GUI for your $GOPATH!
Stars: ✭ 672 (-7.82%)
Mutual labels:  gui
Imgui Sfml
Dear ImGui binding for use with SFML
Stars: ✭ 596 (-18.24%)
Mutual labels:  gui
Ns Usbloader
Awoo Installer/TinFoil/GoldLeaf NSPs (and other files) uploader and RCM tool. Also a tool for split files and merge them back.
Stars: ✭ 708 (-2.88%)
Mutual labels:  gui
Jxbwkwebview
An component WebView for iOS base on WKWebView
Stars: ✭ 646 (-11.39%)
Mutual labels:  webview
Python Progressbar
Progressbar 2 - A progress bar for Python 2 and Python 3 - "pip install progressbar2"
Stars: ✭ 682 (-6.45%)
Mutual labels:  gui
Lvgl
Powerful and easy-to-use embedded GUI library with many widgets, advanced visual effects (opacity, antialiasing, animations) and low memory requirements (16K RAM, 64K Flash).
Stars: ✭ 8,172 (+1020.99%)
Mutual labels:  gui
Cvui
A (very) simple UI lib built on top of OpenCV drawing primitives
Stars: ✭ 619 (-15.09%)
Mutual labels:  gui
React Nodegui
Build performant, native and cross-platform desktop applications with native React + powerful CSS like styling.πŸš€
Stars: ✭ 5,914 (+711.25%)
Mutual labels:  gui
Guilite
βœ”οΈThe smallest header-only GUI library(4 KLOC) for all platforms
Stars: ✭ 5,841 (+701.23%)
Mutual labels:  gui
Debotnet
πŸ”₯πŸš€ Debotnet is a tiny portable tool for controlling Windows 10's many privacy-related settings and keep your personal data private.
Stars: ✭ 707 (-3.02%)
Mutual labels:  gui
Sixtyfps
SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.
Stars: ✭ 605 (-17.01%)
Mutual labels:  gui
Copperspice
Cross platform C++ libraries
Stars: ✭ 630 (-13.58%)
Mutual labels:  gui
Textractor
Extracts text from video games and visual novels. Highly extensible.
Stars: ✭ 656 (-10.01%)
Mutual labels:  gui
Vim Quickui
The missing UI extensions for Vim 8.2 (and NeoVim 0.4) !! 😎
Stars: ✭ 714 (-2.06%)
Mutual labels:  gui

webview_deno

stars issues ci downloads deno version deno doc license

deno bindings for webview using the webview_rust library.

Webview is a tiny cross-platform library to render web-based GUIs for desktop applications.


⚠️ This project is still in an development. Expect breaking changes.


Example Image

Example

import { Webview } from "https://deno.land/x/webview/mod.ts";

const html = `
  <html>
  <body>
    <h1>Hello from deno v${Deno.version.deno}</h1>
  </body>
  </html>
`;

const webview = new Webview(
  { url: `data:text/html,${encodeURIComponent(html)}` },
);
await webview.run();

you can run this example directly from the web:

deno run -Ar --unstable https://deno.land/x/webview/examples/local.ts

or in your development environment:

deno run -Ar --unstable examples/local.ts

you can find other examples in the examples/ directory.

Documentation

You can find the official documentation here.

Development

Prerequisites

For building webview_deno the same prerequisites as for building deno is required.

A recommended dependency is denon which is used for the built in scripts found in the denon.json file.

Linux dependencies

  • webkit2gtk (to install using apt: sudo apt-get install libwebkit2gtk-4.0-dev)

Building

Building webview_deno can take a nontrivial amount of time depending on your operating system. After the first build most files will be cached so building time will be reduced. Building on Windows requires admin privileges.

For a default build you can use the provided script:

deno run --unstable -A scripts/build.ts

which internally runs:

optionally you can use mshtml:

deno run --unstable -A scripts/build.ts mshtml

Running

To run webview_deno without automatically downloading the binaries from releases you will need to use the environment variable PLUGIN_URL and set it to the path where the built binaries are located. This is usually file://./target/release. The process of running and using local binaries can be easier to using the dev script:

deno run --unstable -A scripts/dev.ts examples/local.ts

Environment variables

  • PLUGIN_URL - The URL of the plugin Due to MSHTML (internet explorer) no longer being enabled by default, the only way to enable it is to set the PLUGIN_URL variable to the path of a binary build built with the --no-default-features flag or using deno --unstable -A scripts/build.ts mshtml. This is usually ./target/release/ when developing locally.
  • DEBUG - Disable cache and enable logs for plug. Used for debugging.

Dependencies

Deno

Rust

Other

Contribution

Pull request, issues and feedback are very welcome. Code style is formatted with denon fmt (which internally runs deno fmt and cargo fmt) and commit messages are done following Conventional Commits spec.

Licence

Copyright 2020-present, the webview_deno team. All rights reserved. MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].