https://github.com/ohyfun/ohy
A Lightweight, Privacy-First CLI for Packaging Web into Desktop Apps
https://github.com/ohyfun/ohy
command-line desktop dioxus dioxus-desktop linux linux-desktop private-first rust tuari wry
Last synced: 12 months ago
JSON representation
A Lightweight, Privacy-First CLI for Packaging Web into Desktop Apps
- Host: GitHub
- URL: https://github.com/ohyfun/ohy
- Owner: ohyfun
- License: mit
- Created: 2025-02-01T12:39:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-02T15:11:44.000Z (about 1 year ago)
- Last Synced: 2025-03-27T21:48:08.331Z (about 1 year ago)
- Topics: command-line, desktop, dioxus, dioxus-desktop, linux, linux-desktop, private-first, rust, tuari, wry
- Language: Rust
- Homepage:
- Size: 9.77 KB
- Stars: 74
- Watchers: 3
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ohy
"ohy" is derived from the Japanese word "おはよ" (good morning). It's a lightweight command-line tool written in Rust that converts web applications into desktop applications.
## Key Features
* Small single executable: Less than 5MB.
* Data privacy isolation: Isolates based on the connection address and application name.
* Multiple instances: Applications can be run concurrently with isolated session data by default.
* Easy deployment: Simply copy the binary file for use; no need for sudo privileges.
* Automatic icon retrieval: Automatically fetches the application icon.
* Centralized caching: Local cache data is stored in a fixed directory, avoiding scattered data writes that could clutter system directories.
## Usage
```bash
Usage: ohy --url [-n ] [-w ] [-h ] [-a ]
Options:
--url url example https://www.github.com
-n, --name name
-w, --width width default 1200
-h, --height height default 780
-a, --user-agent user agent
--help, help display usage information
```
## Example
To create a desktop application for qwen chat:
```bash
ohy --url https://chat.qwenlm.ai -n qwen
```
## Installation
1. Install the application using Cargo
```bash
cargo install ohy
```
2. Linux Dependencies (Windows and macOS do not require this step)
Arch Linux / Manjaro:
```bash
sudo pacman -S webkit2gtk-4.1
```
Debian / Ubuntu:
```bash
sudo apt install libwebkit2gtk-4.1-dev
```
Fedora
```bash
sudo dnf install gtk3-devel webkit2gtk4.1-devel
```
Centos
```bash
sudo yum install gtk3-devel webkit2gtk4.1-devel
```
## Benefits
* Lightweight and efficient resource usage
* Enhanced privacy through session isolation
* Simple and straightforward configuration
* Cross-platform compatibility
## Developers
The program has only been tested on Linux and Windows (since I'm a Linux user and don't have a Mac).
In theory, it should work on macOS (as the underlying dependency, wry, supports all platforms).
although there might be some bugs with crate imports. Mac users are welcome to submit issues.
## screenshot
### linux



> linux app cache data directory `$HOME/.config/ohy/*`

### windows





> windows app cache data directory `C:\Users\$USER_NAME\AppData\Roaming\ohy\*`
