summaryrefslogtreecommitdiff
path: root/README.md
blob: 88d552a34ec19d715292f04247e78a704db90d8b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Rune

Njalla on iOS.

Rune is a native iOS client for managing your Njalla account. It provides fast,
minimal access to domains, DNS, API tokens, and account balance without relying
on the web UI.

---

## Principles

- **Privacy first**  
  Token-based auth. No tracking. No analytics.

- **Minimal surface area**  
  Focus on what you actually need on mobile.

- **Native experience**  
  Built with SwiftUI. Fast, predictable, and simple.

- **No abstraction layers for the sake of it**  
  Direct API usage. Clear data flow.

---

## Features (v1.x)

### Domains
- List domains
- View domain details

### DNS
- View DNS records per domain
- Add, edit, delete records

### API Tokens
- List tokens
- Create tokens with restrictions
- Delete tokens

### Account
- View wallet balance

---

## Authentication

Rune uses **API tokens only**.

- Tokens are stored securely (Keychain)
- No username/password login
- Token is validated on first launch via API

---

## Tech Stack

- SwiftUI
- URLSession (no third-party networking)
- Njalla HTTP API

---

## Scope

Rune is intentionally limited.

Not supported:
- domain registration
- wallet top-ups
- server management
- destructive account actions

---

## Status

Active development.

Early versions focus on:
- correctness
- stability
- clean UX

---

## Why

Njalla has a clean API but no native mobile client. Rune exists to make routine
tasks fast and accessible on iOS.