1 Commits

Author SHA1 Message Date
swanadiva c6b5554028 chore: V1 snapshot before V2 migration 2026-07-07 11:53:19 +07:00
68 changed files with 116 additions and 58 deletions
-1
View File
@@ -40,4 +40,3 @@ Thumbs.db
# Build output
dist/hostkeeper
v1/hostkeeper
View File
+116 -20
View File
@@ -2,40 +2,136 @@
**Cross-platform SSH/SFTP management tool with secure credential storage**
## V1 (Legacy) — CLI/TUI
## Features
V1 adalah versi CLI/TUI yang sudah selesai dan di-freeze. Semua kode ada di folder [`v1/`](v1/).
- **Secure Credential Management** — Store SSH credentials with proper file permissions (0600)
- **SSH Connection** — Connect to hosts via native SSH or Go SSH client
- **Host Management** — Add, list, connect, edit, delete hosts
- **Export/Import** — Backup and transfer credentials across devices
- **TUI Interface** — Interactive terminal user interface for host management
- **Cross-Platform** — Works on Linux, macOS, Windows, and Termux (Android)
- **Fast CLI** — Quick commands for power users
- **Tag-based Organization** — Categorize hosts with custom tags and groups
## Quick Start
### Installation
```bash
cd v1
# Build from source
git clone https://git.tukangketik.id/swanadiva/HostKeeper.git
cd hostkeeper
make build
./hostkeeper tui
# Or install directly
go install git.tukangketik.id/swanadiva/hostkeeper/cmd/hostkeeper@latest
```
Lihat [`v1/README.md`](v1/README.md) untuk dokumentasi lengkap.
### Usage
## V2 (In Development) — GoFiber + React + Electron
```bash
# Add a host (interactive)
hostkeeper add
V2 adalah rewrite dengan arsitektur baru:
- **Backend**: GoFiber v2 (fasthttp) — lokal HTTP server di `app/backend/`
- **Frontend**: React + TypeScript + TailwindCSS v4 di `app/frontend/`
- **Desktop**: Electron wrapper di `app/electron/`
- **Mobile**: WebView shell di `mobile/`
# Or with flags
hostkeeper add myserver --host 192.168.1.10 --user admin --password mypass
Lihat [docs/v2/](docs/v2/) untuk dokumentasi perencanaan.
# List all hosts
hostkeeper list
## Struktur Repository
# Connect to host
hostkeeper connect myserver
# Edit host
hostkeeper edit myserver
# Delete host
hostkeeper delete myserver
# Launch TUI
hostkeeper tui
```
hostkeeper/
├── v1/ ← V1 CLI/TUI (frozen)
├── app/ ← V2 backend + frontend + electron
├── mobile/ ← V2 mobile wrapper
├── template/ ← Referensi UI React (Lumina System)
└── docs/
└── v2/ ← Dokumentasi perencanaan V2
## Core Commands
| Command | Description |
|---------|-------------|
| `hostkeeper add [name]` | Add a new SSH host |
| `hostkeeper list` | List all saved hosts |
| `hostkeeper connect <name>` | Connect to a host |
| `hostkeeper edit <name>` | Edit a host configuration |
| `hostkeeper delete <name>` | Delete a host |
| `hostkeeper export <file>` | Export data to JSON file |
| `hostkeeper import <file>` | Import data from JSON file |
| `hostkeeper tui` | Launch TUI interface |
| `hostkeeper completion [shell]` | Generate shell completion |
| `hostkeeper version` | Print version info |
## Installation
See [Installation Guide](docs/INSTALLATION.md) for detailed instructions for all platforms.
## Usage
See [Usage Guide](docs/USAGE.md) for detailed command examples.
## Architecture
See [Architecture Overview](docs/ARCHITECTURE.md) for technical details.
## Security
- All credential files use `0600` permissions (owner read/write only)
- Passwords and keys are never logged or displayed in error messages
- Encrypted storage planned for Phase 2
## Development
### Prerequisites
- Go 1.21+
- Make (optional, for build automation)
### Setup
```bash
git clone https://git.tukangketik.id/swanadiva/HostKeeper.git
cd hostkeeper
make deps
make build
```
### Testing
```bash
# All tests
make test
# With coverage
make test-coverage
```
### Build
```bash
# Current platform
make build
# All platforms
make release
```
## Tech Stack
- **Language**: Go 1.21+
- **CLI Framework**: [Cobra](https://github.com/spf13/cobra)
- **TUI Framework**: [Bubble Tea](https://github.com/charmbracelet/bubbletea)
- **SSH Library**: [golang.org/x/crypto/ssh](https://pkg.go.dev/golang.org/x/crypto/ssh)
## Project Status
Project is in active development. See [PROJECT_STATE.md](PROJECT_STATE.md) for current progress.
## License
MIT
View File
View File
View File
View File
-37
View File
@@ -1,37 +0,0 @@
# Hostkeeper V1 — CLI/TUI
> **Status**: FROZEN — no further development.
> Pembuatan V2 dilakukan di folder `../app/` dan `../mobile/`.
Hostkeeper V1 adalah SSH/SFTP management tool berbasis CLI + TUI (Bubble Tea).
## Quick Start
```bash
cd v1
make build
./hostkeeper tui
```
## Dokumentasi
- [Architecture](docs/ARCHITECTURE.md)
- [Installation](docs/INSTALLATION.md)
- [Usage](docs/USAGE.md)
- [Test Plan](docs/TEST_PLAN.md)
- [Project State](PROJECT_STATE.md)
## Tech Stack
- Go 1.26+
- Cobra (CLI)
- Bubble Tea (TUI)
- golang.org/x/crypto/ssh
## Test
```bash
cd v1
make test
# 105 tests passing
```