@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.
Files changed (2) hide show
  1. package/README.md +69 -31
  2. 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 | 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 | |
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
- beads-ui supports two Dolt connection modes, configured via `.beads/metadata.json`:
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/`. No extra configuration needed.
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. Set `dolt_mode` to `"server"` in metadata.json:
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": "yuklar"
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
- ## Attachments
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 content supports a custom `attach://` URI scheme for portable file references. Instead of hardcoding full URLs, store references like:
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
  ![Screenshot](attach://bead-42/screenshot.png)
88
- [Log file](attach://bead-42/log.txt)
89
132
  ```
90
133
 
91
- At render time, `attach://` URIs are resolved against `FILE_ATTACHMENT_BASE_URL`:
134
+ ### Issue Mentions
92
135
 
93
- ```bash
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
- This keeps bead content portable across environments (local dev, staging, production) without rewriting markdown.
142
+ ### Deep Linking
107
143
 
108
- ## Issue Mentions
144
+ Sections and headings get unique element IDs for fragment linking:
109
145
 
110
- Reference other issues in markdown using `#issue-id`:
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
- See #yuklar-985 for the original audit.
114
- Depends on #yuklar-eb2 and #yuklar-g57.
150
+ [see details](/detail/proj-a1b#my-heading)
115
151
  ```
116
152
 
117
- These are automatically rendered as clickable links to the issue detail page. Mentions inside existing links or code blocks are left unchanged.
153
+ ### Theme
154
+
155
+ Solarized Light color palette with matching syntax highlighting.
118
156
 
119
157
  ## License
120
158
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsktash/beads-ui",
3
- "version": "0.1.29",
3
+ "version": "0.1.30",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/rsktash/beads-ui.git"