Add initial implementation of TUI-WM with README, build tasks, and configuration files

This commit is contained in:
Björn Blomberg
2026-03-27 14:52:50 +01:00
parent f50ffa04de
commit d7c70baf35
7 changed files with 932 additions and 1 deletions

View File

@@ -1,3 +1,62 @@
# TUI-WM
en terminal baserad windows maneger med ssh suport
En terminal-baserad fönsterhanterare med flytande fönster, full mussuport och SSH-kompatibilitet — inspirerad av tmux men med ett modernt UX.
## Funktioner (planerade)
- Flytande terminaler med fri positionering och storleksändring
- Full mussuport: vänster/höger klick, scroll, markering
- Topanel och/eller bottenpanel
- Dynamisk omrendering vid terminalstorlek-ändringar
- SSH-kompatibel (fungerar via vanliga ANSI escape-koder)
- Kompilerar till fristående binärer för Windows och Linux
## Teknikstack
| Komponent | Bibliotek |
|---|---|
| Terminal I/O, mus, resize | `crossterm` |
| TUI-rendering, buffersystem | `ratatui` |
| Pseudoterminal (PTY/ConPTY) | `portable-pty` |
| Språk | Rust |
## Bygga projektet
### Förutsättningar
- [Rust toolchain](https://rustup.rs/) (`rustup`, `cargo`)
- För Windows-cross-kompilering från Linux: `mingw-w64`
### Bygga för Linux
```bash
cargo build --release --target x86_64-unknown-linux-gnu
```
### Bygga för Windows
```bash
cargo build --release --target x86_64-pc-windows-gnu
```
Binärerna hamnar i `target/<target>/release/`.
### Via VS Code
Använd `Terminal > Run Task` och välj:
- **Build Linux** — bygger för `x86_64-unknown-linux-gnu`
- **Build Windows** — bygger för `x86_64-pc-windows-gnu`
- **Build (native)** — bygger för det platform du sitter på
- **Run** — kör appen direkt
## Projektstruktur
```
TUI-WM/
├── src/
│ └── main.rs
├── .vscode/
│ └── tasks.json
├── Cargo.toml
└── README.md
```