Rename to claudify, add docs and .deb packaging
- Rename package from claude-app to claudify (v0.1.0) - Add README.md with install/usage instructions - Add CLAUDE.md with architecture, build, and known issues - Add .desktop file for application menu integration - Build target set to .deb only - Remove failed CSD button workarounds, document upstream bug - Remove gtk dependency (no longer needed) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
6b2c8ffa08
commit
101c91c4d8
9 changed files with 136 additions and 38 deletions
51
CLAUDE.md
Normal file
51
CLAUDE.md
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
# Claudify
|
||||
|
||||
Native desktop wrapper for [claude.ai](https://claude.ai) built with Tauri v2 and WebKitGTK.
|
||||
|
||||
## Architecture
|
||||
|
||||
- **Tauri v2** with Rust backend, system WebKitGTK webview on Linux
|
||||
- **Direct webview navigation** to `https://claude.ai` (not iframe — claude.ai blocks iframes via CSP)
|
||||
- **No frontend code** — `src/index.html` is a placeholder required by Tauri's build system; the actual UI is claude.ai loaded via `WebviewUrl::External`
|
||||
- All app logic lives in `src-tauri/src/lib.rs` inside the `setup()` closure
|
||||
|
||||
## Key Files
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `src-tauri/src/lib.rs` | All app logic: window, tray, notifications, navigation filter |
|
||||
| `src-tauri/src/main.rs` | Entry point, calls `claudify::run()` |
|
||||
| `src-tauri/tauri.conf.json` | Tauri config: app identity, bundle targets, security |
|
||||
| `src-tauri/capabilities/` | Tauri v2 permission grants for local window and remote claude.ai |
|
||||
| `src-tauri/Cargo.toml` | Rust dependencies |
|
||||
|
||||
## Building
|
||||
|
||||
### Prerequisites
|
||||
|
||||
```bash
|
||||
# Debian/Ubuntu system packages
|
||||
sudo apt install libwebkit2gtk-4.1-dev libxdo-dev librsvg2-dev libayatana-appindicator3-dev
|
||||
|
||||
# Tauri CLI
|
||||
cargo install tauri-cli --version "^2.0" --locked
|
||||
```
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
cargo tauri build # Produces .deb in target/release/bundle/deb/
|
||||
cargo tauri dev # Development mode with hot reload
|
||||
```
|
||||
|
||||
## Known Issues
|
||||
|
||||
- **CSD titlebar buttons non-interactive after hide/show** — Upstream bug in TAO's client-side decoration handling. Titlebar buttons (minimize/maximize/close) become unresponsive after the window is hidden to tray and restored. The close button still works via the tray menu. No known workaround — GTK decoration layout overrides, header bar replacement, resize nudges, and present() were all attempted without success. Tracked at:
|
||||
- https://github.com/tauri-apps/tauri/issues/11856
|
||||
- https://github.com/tauri-apps/tao/issues/1046
|
||||
|
||||
## Conventions
|
||||
|
||||
- Keep all app logic in `lib.rs` — avoid splitting into multiple modules unless complexity demands it
|
||||
- Navigation allowlist in `is_allowed_navigation()` — add new OAuth providers here if needed
|
||||
- Test changes with `cargo tauri dev` before building .deb
|
||||
Loading…
Add table
Add a link
Reference in a new issue