This is the GUI interface for OwlNest, powered by Tauri and Vue.
The GUI and the library it is using(OwlNest) is still in early stage of development, you will experience bugs and even memory leaks. Feel free to file an issue if something is wrong! It is also a way to keep the project churning.
You will need Rust toolchain installed on your machine to compile the code. Use rustup to bootstrap the Rust toolchain.
- VS Code + Volar + Tauri + rust-analyzer
- If you want to share your experience when with other IDE setups, please file a PR.
- Clone
https://github.com/Microsoft/vcpkgand executebootstrap-vcpkg.batinside the cloned repository. - Set environment variable
VCPKG_ROOTto the cloned repository.- Optional: Append the path to the repository to your
PATHenvironment variable so that you can use it directly in your terminal. - Don't use the vcpkg that is bundled with Visual Studio, it's only intended for use with existing vcpkg projects. This repository does not contain a vcpkg project.
- Your IDE might need a restart to access the newly-set environment variable.
- You can use
echo $Env:VCPKG_ROOTto see whether the variable is properly set(only works with PowerShell).
- Optional: Append the path to the repository to your
- Execute
./vcpkg.exe install openssl:x64-windows-static-mdto install openssl library that can be statically-linked.
Note: You can also use dynamically linked openssl. Please refer to crate openssl documentation for more info.
Note: You can also use vendored feature to compile OpenSSL library from source, without external copy of OpenSSL. This will increase time taken on first-time build and build after cleaning build artifacts. You will also need a Perl installation to compile OpenSSL from source.
We use Protocol Buffers for efficient encoding of binary data and thus require protoc to be installed.
- Using downloaded binary: see Protocol Buffers official website.
- Using Chocolatey:
choco install protoc.
- Get the latest LTS version of NodeJS from its official website. Non-LTS or older version may work, but there is no guarantee.
- Alternatively, install
nvmfor managing all NodeJS installations on your machine using Chocolatey withchoco install nvm. Note that normal NodeJS installation will ask if you want to use Chocolately as your package manager for installing node modules with native code(C/C++).
- Tauri needs WebView2 to render the UI properly. Windows 10 Update 1809 and later should have WebView2 installed by default. If you are building on an older OS you can get WebView 2 here(English page).
- Similar to Windows, Tauri needs a browser engine to render the UI properly, which is
webkit2gtkin this case. - Please refer to official documentation of Tauri for more information to setup for developing Tauri applications.
Bodyless mode is selected(or rather, body-full mode is deselected) when execute yarn vite without bringing up tauri CLI(nor Rust toolchain) first. In this mode, all calls through tauri IPC from frontend code will result in error. In this mode, all errors relates to IPC calls is suppressed.