@rsktash/beads-ui 0.1.29 → 0.1.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -31
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -36,20 +36,44 @@ bd-ui start
|
|
|
36
36
|
|
|
37
37
|
## Environment Variables
|
|
38
38
|
|
|
39
|
-
| Variable
|
|
40
|
-
|
|
41
|
-
| `PORT`
|
|
42
|
-
| `HOST`
|
|
43
|
-
| `BEADS_DOLT_PASSWORD`
|
|
39
|
+
| Variable | Description | Default |
|
|
40
|
+
|----------------------------|----------------------------------------------|-------------|
|
|
41
|
+
| `PORT` | Server port | `3333` |
|
|
42
|
+
| `HOST` | Bind address | `127.0.0.1` |
|
|
43
|
+
| `BEADS_DOLT_PASSWORD` | Password for remote Dolt server connection | |
|
|
44
44
|
| `FILE_ATTACHMENT_BASE_URL` | Base URL for resolving `attach://` URIs | |
|
|
45
|
+
| `BEADS_UI_AUTH_FILE` | Path to users JSON file for authentication | |
|
|
46
|
+
|
|
47
|
+
## Authentication
|
|
48
|
+
|
|
49
|
+
Auth is optional. When `BEADS_UI_AUTH_FILE` points to a valid users file, login is required. When not set, auth is bypassed entirely.
|
|
50
|
+
|
|
51
|
+
### Users file format
|
|
52
|
+
|
|
53
|
+
```json
|
|
54
|
+
{
|
|
55
|
+
"users": [
|
|
56
|
+
{ "username": "alice", "password": "secret", "role": "Developer" },
|
|
57
|
+
{ "username": "bob", "password": "guest", "role": "Viewer" }
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Running with auth
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
BEADS_UI_AUTH_FILE=/path/to/users.json bd-ui start
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Session tokens are stored in the browser's localStorage and kept in server memory. Tokens are invalidated on server restart.
|
|
45
69
|
|
|
46
70
|
## Dolt Database Modes
|
|
47
71
|
|
|
48
|
-
|
|
72
|
+
Two Dolt connection modes, configured via `.beads/metadata.json`:
|
|
49
73
|
|
|
50
74
|
### Embedded (default)
|
|
51
75
|
|
|
52
|
-
Spawns a local `dolt sql-server` from `.beads/embeddeddolt/`.
|
|
76
|
+
Spawns a local `dolt sql-server` from `.beads/embeddeddolt/`.
|
|
53
77
|
|
|
54
78
|
```json
|
|
55
79
|
{
|
|
@@ -60,7 +84,7 @@ Spawns a local `dolt sql-server` from `.beads/embeddeddolt/`. No extra configura
|
|
|
60
84
|
|
|
61
85
|
### Remote Server
|
|
62
86
|
|
|
63
|
-
Connects to an external Dolt server
|
|
87
|
+
Connects to an external Dolt server:
|
|
64
88
|
|
|
65
89
|
```json
|
|
66
90
|
{
|
|
@@ -69,52 +93,66 @@ Connects to an external Dolt server. Set `dolt_mode` to `"server"` in metadata.j
|
|
|
69
93
|
"dolt_server_host": "127.0.0.1",
|
|
70
94
|
"dolt_server_port": 3308,
|
|
71
95
|
"dolt_server_user": "root",
|
|
72
|
-
"dolt_database": "
|
|
96
|
+
"dolt_database": "mydb"
|
|
73
97
|
}
|
|
74
98
|
```
|
|
75
99
|
|
|
76
|
-
Password is read from the `BEADS_DOLT_PASSWORD` environment variable:
|
|
77
|
-
|
|
78
100
|
```bash
|
|
79
101
|
BEADS_DOLT_PASSWORD=secret bd-ui start
|
|
80
102
|
```
|
|
81
103
|
|
|
82
|
-
##
|
|
104
|
+
## Docker
|
|
105
|
+
|
|
106
|
+
```yaml
|
|
107
|
+
services:
|
|
108
|
+
beads-ui:
|
|
109
|
+
image: ghcr.io/rsktash/beads-ui:latest
|
|
110
|
+
ports:
|
|
111
|
+
- "3333:3333"
|
|
112
|
+
volumes:
|
|
113
|
+
- /path/to/workspace:/workspace
|
|
114
|
+
working_dir: /workspace
|
|
115
|
+
environment:
|
|
116
|
+
- HOST=0.0.0.0
|
|
117
|
+
- BEADS_DOLT_PASSWORD=secret
|
|
118
|
+
- BEADS_UI_AUTH_FILE=/workspace/.beads/users.json
|
|
119
|
+
- FILE_ATTACHMENT_BASE_URL=https://files.example.com/attachments
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Images published to `ghcr.io/rsktash/beads-ui` on version tags via GitHub Actions.
|
|
83
123
|
|
|
84
|
-
Markdown
|
|
124
|
+
## Markdown Features
|
|
125
|
+
|
|
126
|
+
### Attachments
|
|
127
|
+
|
|
128
|
+
`attach://` URIs for portable file references, resolved against `FILE_ATTACHMENT_BASE_URL`:
|
|
85
129
|
|
|
86
130
|
```md
|
|
87
131
|

|
|
88
|
-
[Log file](attach://bead-42/log.txt)
|
|
89
132
|
```
|
|
90
133
|
|
|
91
|
-
|
|
134
|
+
### Issue Mentions
|
|
92
135
|
|
|
93
|
-
|
|
94
|
-
FILE_ATTACHMENT_BASE_URL=https://files.example.com/attachments bd-ui start
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
The above markdown resolves to:
|
|
136
|
+
`#issue-id` auto-links to the issue detail page:
|
|
98
137
|
|
|
138
|
+
```md
|
|
139
|
+
See #proj-a1b for details. Depends on #proj-c3d.
|
|
99
140
|
```
|
|
100
|
-
https://files.example.com/attachments/bead-42/screenshot.png
|
|
101
|
-
https://files.example.com/attachments/bead-42/log.txt
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
Normal `http(s)://` URLs in markdown are rendered as-is.
|
|
105
141
|
|
|
106
|
-
|
|
142
|
+
### Deep Linking
|
|
107
143
|
|
|
108
|
-
|
|
144
|
+
Sections and headings get unique element IDs for fragment linking:
|
|
109
145
|
|
|
110
|
-
|
|
146
|
+
- Predefined sections: `#description`, `#acceptance-criteria`, `#notes`, `#design`
|
|
147
|
+
- Content headings: auto-slugified (e.g., `## My Heading` → `#my-heading`)
|
|
111
148
|
|
|
112
149
|
```md
|
|
113
|
-
|
|
114
|
-
Depends on #yuklar-eb2 and #yuklar-g57.
|
|
150
|
+
[see details](/detail/proj-a1b#my-heading)
|
|
115
151
|
```
|
|
116
152
|
|
|
117
|
-
|
|
153
|
+
### Theme
|
|
154
|
+
|
|
155
|
+
Solarized Light color palette with matching syntax highlighting.
|
|
118
156
|
|
|
119
157
|
## License
|
|
120
158
|
|