@polterware/polterbase 0.2.4 → 0.2.6
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 +101 -12
- package/dist/index.js +1288 -66
- package/package.json +2 -3
package/README.md
CHANGED
|
@@ -18,17 +18,31 @@ Polterbase is a productivity layer on top of the official `supabase` CLI. Instea
|
|
|
18
18
|
- **Global Flags Picker**: Add common global flags in one step
|
|
19
19
|
- **Pinned Commands and Runs**: Toggle base command pins with `→` and pin exact runs after success
|
|
20
20
|
- **Custom Command Mode**: Run raw Supabase arguments like `-v` or `status -o json`
|
|
21
|
-
- **
|
|
21
|
+
- **Built-in Self-Update**: Update Polterbase for the current repository or globally through npm
|
|
22
|
+
- **Shell Execution**: Resolves `supabase` from the current repository first, then falls back to `PATH`
|
|
22
23
|
- **TypeScript-based CLI**: Strongly typed internal implementation
|
|
24
|
+
- **App Workflows**: Explicit `polterbase app ...` flows for repository-aware setup, linking, migrations, runtime configuration, and app installation
|
|
23
25
|
|
|
24
26
|
---
|
|
25
27
|
|
|
26
28
|
## Installation
|
|
27
29
|
|
|
28
|
-
### Run without installing
|
|
30
|
+
### Run one-off without installing
|
|
29
31
|
|
|
30
32
|
```bash
|
|
31
|
-
npx @polterware/polterbase
|
|
33
|
+
npx @polterware/polterbase@latest
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Install in a repository
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npm install -D @polterware/polterbase
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Then run it from that repository with:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npx polterbase
|
|
32
46
|
```
|
|
33
47
|
|
|
34
48
|
### Install globally
|
|
@@ -43,28 +57,36 @@ Then run:
|
|
|
43
57
|
polterbase
|
|
44
58
|
```
|
|
45
59
|
|
|
46
|
-
|
|
60
|
+
Use a repository install when you want the CLI version pinned to one project.
|
|
61
|
+
Use a global install when you want the same CLI version across every repository.
|
|
47
62
|
|
|
48
63
|
### Update
|
|
49
64
|
|
|
50
|
-
If you
|
|
65
|
+
If you installed it globally, update it with:
|
|
51
66
|
|
|
52
67
|
```bash
|
|
53
|
-
|
|
68
|
+
npm install -g @polterware/polterbase@latest
|
|
54
69
|
```
|
|
55
70
|
|
|
56
|
-
If you installed it
|
|
71
|
+
If you installed it in a repository, update it there with:
|
|
57
72
|
|
|
58
73
|
```bash
|
|
59
|
-
npm install -
|
|
74
|
+
npm install -D @polterware/polterbase@latest
|
|
60
75
|
```
|
|
61
76
|
|
|
77
|
+
You can also run the same update flow from inside Polterbase:
|
|
78
|
+
|
|
79
|
+
1. Go to the `Actions` section
|
|
80
|
+
2. Choose `Update Polterbase`
|
|
81
|
+
3. Choose `Current repository` or `Global install`
|
|
82
|
+
4. Confirm the npm update command
|
|
83
|
+
|
|
62
84
|
---
|
|
63
85
|
|
|
64
86
|
## Requirements
|
|
65
87
|
|
|
66
88
|
- **Node.js**: `>= 18`
|
|
67
|
-
- **Supabase CLI**: installed
|
|
89
|
+
- **Supabase CLI**: installed globally in `PATH` or locally in the current repository
|
|
68
90
|
|
|
69
91
|
Check your environment:
|
|
70
92
|
|
|
@@ -81,14 +103,57 @@ Install Supabase CLI (official docs):
|
|
|
81
103
|
|
|
82
104
|
## Quick Reference
|
|
83
105
|
|
|
106
|
+
### App Workflows
|
|
107
|
+
|
|
108
|
+
Polterbase keeps generic Supabase execution separate from app-specific automation.
|
|
109
|
+
Use the `app` namespace when you want project-aware workflows:
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
polterbase app setup uru --path .
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
polterbase app link uru --path .
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
polterbase app migrate uru push --path .
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
polterbase app configure uru --path .
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
polterbase app install uru --platform macos
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
`setup uru` installs dependencies, collects Supabase connection data, links the project, pushes migrations, and writes the runtime bootstrap payload used by the desktop app.
|
|
132
|
+
|
|
133
|
+
`configure uru` refreshes the runtime connection payload without reinstalling the app.
|
|
134
|
+
|
|
135
|
+
`install uru` is currently macOS-only. By default it resolves the latest GitHub release from `polterware/uru`, accepts `--version <version>` to pin a release, and still supports `--artifact-url` or `POLTERBASE_URU_MACOS_ARTIFACT_URL` as manual overrides.
|
|
136
|
+
|
|
137
|
+
Use `POLTERBASE_URU_GITHUB_REPO=owner/repo` when you need to resolve releases from a fork or a different repository.
|
|
138
|
+
|
|
84
139
|
### Execution Model
|
|
85
140
|
|
|
86
|
-
Polterbase
|
|
141
|
+
Polterbase executes workflow commands as:
|
|
87
142
|
|
|
88
143
|
```bash
|
|
89
144
|
supabase <command> <extra-args> <global-flags>
|
|
90
145
|
```
|
|
91
146
|
|
|
147
|
+
The self-update action is the only built-in exception and can run one of:
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
npm install -g @polterware/polterbase@latest
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
npm install -D @polterware/polterbase@latest
|
|
155
|
+
```
|
|
156
|
+
|
|
92
157
|
### Typical Flow
|
|
93
158
|
|
|
94
159
|
1. Choose a command from the unified board
|
|
@@ -189,6 +254,30 @@ Pins are persisted locally using OS-level app config storage.
|
|
|
189
254
|
|
|
190
255
|
## Usage Examples
|
|
191
256
|
|
|
257
|
+
### Bootstrap Uru from source
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
polterbase app setup uru --path /absolute/path/to/uru
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Reconfigure an installed Uru app
|
|
264
|
+
|
|
265
|
+
```bash
|
|
266
|
+
polterbase app configure uru
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### Install the latest released Uru app
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
polterbase app install uru --platform macos
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
Install a specific release:
|
|
276
|
+
|
|
277
|
+
```bash
|
|
278
|
+
polterbase app install uru --platform macos --version 1.0.0
|
|
279
|
+
```
|
|
280
|
+
|
|
192
281
|
### Check Supabase CLI version
|
|
193
282
|
|
|
194
283
|
Interactive path:
|
|
@@ -252,11 +341,11 @@ supabase db pull --yes
|
|
|
252
341
|
|
|
253
342
|
### `supabase: command not found`
|
|
254
343
|
|
|
255
|
-
Supabase CLI is not installed
|
|
344
|
+
Supabase CLI is not installed in the current repository and is not available in your `PATH`.
|
|
256
345
|
|
|
257
346
|
Fix:
|
|
258
347
|
|
|
259
|
-
1. Install Supabase CLI
|
|
348
|
+
1. Install Supabase CLI globally or in the current repository
|
|
260
349
|
2. Restart terminal
|
|
261
350
|
3. Run `supabase --version`
|
|
262
351
|
|