blessed-components 0.0.1 → 1.1.0
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 +30 -44
- package/ROADMAP.md +695 -302
- package/dist/index.cjs +132 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js +124 -0
- package/dist/index.js.map +1 -1
- package/dist/progress-bar/blessed.cjs +60 -0
- package/dist/progress-bar/blessed.cjs.map +1 -0
- package/dist/progress-bar/blessed.d.cts +129 -0
- package/dist/progress-bar/blessed.d.ts +129 -0
- package/dist/progress-bar/blessed.js +54 -0
- package/dist/progress-bar/blessed.js.map +1 -0
- package/dist/progress-bar/index.cjs +33 -0
- package/dist/progress-bar/index.cjs.map +1 -0
- package/dist/progress-bar/index.d.cts +181 -0
- package/dist/progress-bar/index.d.ts +181 -0
- package/dist/progress-bar/index.js +31 -0
- package/dist/progress-bar/index.js.map +1 -0
- package/dist/sparkline/blessed.cjs +86 -0
- package/dist/sparkline/blessed.cjs.map +1 -0
- package/dist/sparkline/blessed.d.cts +90 -0
- package/dist/sparkline/blessed.d.ts +90 -0
- package/dist/sparkline/blessed.js +80 -0
- package/dist/sparkline/blessed.js.map +1 -0
- package/dist/sparkline/index.cjs +59 -0
- package/dist/sparkline/index.cjs.map +1 -0
- package/dist/sparkline/index.d.cts +123 -0
- package/dist/sparkline/index.d.ts +123 -0
- package/dist/sparkline/index.js +57 -0
- package/dist/sparkline/index.js.map +1 -0
- package/package.json +40 -12
- package/src/components/progress-bar/README.md +193 -0
- package/src/components/sparkline/README.md +171 -0
package/README.md
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Composable, typed terminal UI components for
|
|
4
4
|
[Blessed](https://github.com/chjj/blessed).
|
|
5
5
|
|
|
6
|
-
> **Project status:**
|
|
7
|
-
>
|
|
6
|
+
> **Project status:** early development. `ProgressBar` and `Sparkline` are
|
|
7
|
+
> available; more components are coming soon.
|
|
8
8
|
|
|
9
9
|
## Goals
|
|
10
10
|
|
|
@@ -17,8 +17,6 @@ Composable, typed terminal UI components for
|
|
|
17
17
|
|
|
18
18
|
## Installation
|
|
19
19
|
|
|
20
|
-
Components are not available yet. Once the first component ships:
|
|
21
|
-
|
|
22
20
|
```sh
|
|
23
21
|
npm install blessed blessed-components
|
|
24
22
|
```
|
|
@@ -31,8 +29,8 @@ npm install blessed blessed-components
|
|
|
31
29
|
|
|
32
30
|
| Component | Purpose | Priority |
|
|
33
31
|
| ------------- | ---------------------------------------------------- | -------- |
|
|
34
|
-
| `ProgressBar` | Render one bounded horizontal progress bar.
|
|
35
|
-
| `Sparkline`
|
|
32
|
+
| [`ProgressBar`](./src/components/progress-bar/README.md) | Render one bounded horizontal progress bar. | Available |
|
|
33
|
+
| [`Sparkline`](./src/components/sparkline/README.md) | Render compact time-series data with Unicode blocks. | Available |
|
|
36
34
|
| `MetricBars` | Render labeled metrics as aligned progress bars. | P0 |
|
|
37
35
|
| `Stat` | Display a label and highlighted value. | P0 |
|
|
38
36
|
|
|
@@ -110,13 +108,34 @@ Useful commands:
|
|
|
110
108
|
|
|
111
109
|
```sh
|
|
112
110
|
npm run build
|
|
111
|
+
npm run docs
|
|
112
|
+
npm run docs:check
|
|
113
113
|
npm test
|
|
114
114
|
npm run test:watch
|
|
115
115
|
npm run lint
|
|
116
|
+
npm run lint:fix
|
|
117
|
+
npm run biome:check
|
|
118
|
+
npm run preview
|
|
116
119
|
npm run typecheck
|
|
117
120
|
npm run format
|
|
121
|
+
npm run format:check
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
ESLint and Biome extend the shared `super-configs` presets. Biome owns
|
|
125
|
+
formatting and import organization; Prettier is not used.
|
|
126
|
+
|
|
127
|
+
### Terminal component preview
|
|
128
|
+
|
|
129
|
+
Run the prototype component workbench:
|
|
130
|
+
|
|
131
|
+
```sh
|
|
132
|
+
npm run preview
|
|
118
133
|
```
|
|
119
134
|
|
|
135
|
+
Use arrow keys and Enter to select stories, `r` to reload, `Tab` to move
|
|
136
|
+
focus, and `q` to quit. The prototype currently previews ProgressBar and
|
|
137
|
+
Sparkline stories through their public Blessed adapters.
|
|
138
|
+
|
|
120
139
|
## Testing
|
|
121
140
|
|
|
122
141
|
Development follows vertical TDD slices:
|
|
@@ -129,45 +148,12 @@ Development follows vertical TDD slices:
|
|
|
129
148
|
Tests should use public interfaces and observable output. Internal mocks and
|
|
130
149
|
large snapshots are avoided.
|
|
131
150
|
|
|
132
|
-
## Releases
|
|
133
|
-
|
|
134
|
-
[semantic-release](https://github.com/semantic-release/semantic-release)
|
|
135
|
-
publishes from `main`.
|
|
136
|
-
|
|
137
|
-
Commit messages follow
|
|
138
|
-
[Conventional Commits](https://www.conventionalcommits.org/):
|
|
139
|
-
|
|
140
|
-
```text
|
|
141
|
-
fix: clamp progress values
|
|
142
|
-
feat: add progress bar renderer
|
|
143
|
-
feat!: change component update contract
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
Release mapping:
|
|
147
|
-
|
|
148
|
-
| Commit | Release |
|
|
149
|
-
| --------------- | ------- |
|
|
150
|
-
| `fix:` | Patch |
|
|
151
|
-
| `feat:` | Minor |
|
|
152
|
-
| Breaking change | Major |
|
|
153
|
-
|
|
154
|
-
The release workflow:
|
|
155
|
-
|
|
156
|
-
1. Validates formatting, linting, types, tests, and build.
|
|
157
|
-
2. Calculates the next version from commits.
|
|
158
|
-
3. Publishes the package to npm.
|
|
159
|
-
4. Creates a GitHub release with generated notes.
|
|
160
|
-
|
|
161
|
-
### npm trusted publishing setup
|
|
162
|
-
|
|
163
|
-
Before the first release, configure an npm trusted publisher for:
|
|
164
|
-
|
|
165
|
-
- Organization or user: `ElJijuna`
|
|
166
|
-
- Repository: `blessed-components`
|
|
167
|
-
- Workflow filename: `release.yml`
|
|
151
|
+
## Releases and documentation
|
|
168
152
|
|
|
169
|
-
|
|
170
|
-
|
|
153
|
+
`semantic-release` publishes packages from `main`. After a real npm release
|
|
154
|
+
succeeds, the same workflow generates TypeDoc for the released version and
|
|
155
|
+
deploys `docs/api` to GitHub Pages. Commits that produce no release do not
|
|
156
|
+
deploy documentation.
|
|
171
157
|
|
|
172
158
|
## License
|
|
173
159
|
|