@uge/payo 0.1.5 → 0.1.7

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Uttam Gelot
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -9,14 +9,60 @@ coding assistant reads — so Claude, Cursor, Copilot, and friends follow _your_
9
9
  project's conventions instead of guessing.
10
10
 
11
11
  [![CI](https://github.com/uttam-gelot/payo/actions/workflows/ci.yml/badge.svg)](https://github.com/uttam-gelot/payo/actions/workflows/ci.yml)
12
- [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](#license)
12
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
13
13
  [![Bun](https://img.shields.io/badge/Bun-%3E%3D1.1.0-black?logo=bun)](https://bun.sh)
14
14
  [![Made with TypeScript](https://img.shields.io/badge/TypeScript-strict-3178c6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
15
15
 
16
+ <br />
17
+
18
+ ![Payo demo](https://raw.githubusercontent.com/uttam-gelot/payo/main/assets/demo.gif)
19
+
16
20
  </div>
17
21
 
18
22
  ---
19
23
 
24
+ ## Contents
25
+
26
+ - [What is Payo?](#what-is-payo)
27
+ - [Who is this for?](#who-is-this-for)
28
+ - [Quick Start](#quick-start)
29
+ - [How to use — a walkthrough](#how-to-use--a-walkthrough)
30
+ - [What gets generated](#what-gets-generated)
31
+ - [What it asks about](#what-it-asks-about)
32
+ - [AI vs. template generation](#ai-vs-template-generation)
33
+ - [Bootstrap prompt](#bootstrap-prompt)
34
+ - [Resume anytime](#resume-anytime)
35
+ - [Requirements](#requirements)
36
+ - [Run locally](#run-locally)
37
+ - [Contributing](#contributing)
38
+ - [License](#license)
39
+
40
+ ## What is Payo?
41
+
42
+ AI coding assistants are only as good as the context they're given. Payo is an
43
+ interactive CLI that **interviews you about your project** — language, framework,
44
+ database, auth, testing, conventions — and then **generates the guidance files
45
+ your assistant actually reads.**
46
+
47
+ It supports **Claude, Cursor, GitHub Copilot, Codex, Windsurf, and Antigravity**.
48
+ Where the assistant ships a headless CLI, Payo drives that tool's own AI to
49
+ write rich, project-specific docs; where it doesn't, Payo falls back to solid
50
+ templates — so you always end up with usable output.
51
+
52
+ ## Who is this for?
53
+
54
+ - **Devs starting a new repo** who want their AI assistant productive from
55
+ commit #1, not after a dozen "actually, we do it this way" corrections.
56
+ - **Teams enforcing conventions** who need every contributor's assistant to
57
+ follow the same folder structure, naming, testing, and git rules.
58
+ - **Multi-tool users** who switch between Claude, Cursor, and Copilot and want
59
+ the _same_ project guidance expressed in each tool's native format.
60
+ - **Anyone bootstrapping a stack** they haven't wired up before — Payo encodes
61
+ sensible, framework-specific defaults and can scaffold a runnable project.
62
+
63
+ If you've ever pasted the same "here's how this project works" preamble into a
64
+ chat for the third time, Payo is for you.
65
+
20
66
  ## Quick Start
21
67
 
22
68
  No install required — run it in any project directory:
@@ -33,30 +79,28 @@ bunx @uge/payo
33
79
  Answer a short questionnaire about your stack, and Payo drops tailored AI
34
80
  guidance files straight into your repo.
35
81
 
36
- ## What is Payo?
37
-
38
- AI coding assistants are only as good as the context they're given. Payo is an
39
- interactive CLI that **interviews you about your project** — language, framework,
40
- database, auth, testing, conventions and then **generates the guidance files
41
- your assistant actually reads.**
42
-
43
- It supports **Claude, Cursor, GitHub Copilot, Codex, Windsurf, and Antigravity**.
44
- Where the assistant ships a headless CLI, Payo drives that tool's own AI to
45
- write rich, project-specific docs; where it doesn't, Payo falls back to solid
46
- templates so you always end up with usable output.
47
-
48
- ## How it works
49
-
50
- 1. **Answer the questionnaire.** A focused set of questions about your stack and
51
- conventions. Smart defaults mean you can accept recommendations and move fast.
52
- 2. **Payo generates the guidance.** It runs your AI tool's headless CLI in
53
- parallel to write tailored rules/skills — or writes static templates if the
54
- CLI isn't available.
55
- 3. **(Optional) Get a bootstrap prompt.** Payo can write a paste-ready
82
+ ## How to use — a walkthrough
83
+
84
+ 1. **Run Payo from your project root.** `npx @uge/payo` it writes into the
85
+ current directory, so `cd` into the repo first.
86
+ 2. **Answer the questionnaire.** Pick your AI tool, project type, language,
87
+ framework, and so on. Questions **adapt to your answers** choose Next.js
88
+ and you get Next.js-specific follow-ups; choose Postgres and you're asked
89
+ about migrations and naming. Most prompts ship a **recommended default**, so
90
+ you can blast through with <kbd>Enter</kbd>.
91
+ 3. **Review your stack.** Before writing anything, Payo shows a summary of every
92
+ answer and asks you to confirm. Say no and your answers are kept — rerun to
93
+ edit them.
94
+ 4. **Payo generates the guidance.** It writes each tool's files in their native
95
+ format and location (see the table below). With the tool's CLI installed,
96
+ files are generated in parallel by the AI; otherwise solid templates are used.
97
+ 5. **(Optional) Get a bootstrap prompt.** Payo offers to write a paste-ready
56
98
  `bootstrap-prompt.md` you hand to any LLM to scaffold a runnable project that
57
99
  honors the guidance it just generated.
100
+ 6. **Interrupted? Just rerun.** Progress lives under `.payo/`; Payo resumes and
101
+ only generates what's missing.
58
102
 
59
- ## Supported AI tools
103
+ ## What gets generated
60
104
 
61
105
  Each tool gets files in its own native format and location:
62
106
 
@@ -100,8 +144,8 @@ back to static templates.
100
144
 
101
145
  A few environment variables tune AI generation:
102
146
 
103
- | Variable | Default | Purpose |
104
- | -------------------------- | -------- | ------------------------------------ |
147
+ | Variable | Default | Purpose |
148
+ | ----------------------- | -------- | ------------------------------------ |
105
149
  | `PAYO_CONCURRENCY` | `4` | Max parallel agent subprocesses |
106
150
  | `PAYO_RETRIES` | `1` | Extra attempts after a failed run |
107
151
  | `PAYO_AGENT_TIMEOUT_MS` | `120000` | Wall-clock cap per file (ms) |
@@ -122,31 +166,39 @@ generating what's missing. Finished runs clean the directory up automatically.
122
166
 
123
167
  ## Requirements
124
168
 
125
- - [Bun](https://bun.sh) **>= 1.1.0**
169
+ **To run Payo:** [Node.js](https://nodejs.org) **>= 18**. That's it — `npx @uge/payo`
170
+ runs the published, Node-targeted binary, so **you do not need Bun to use Payo.**
171
+ If you prefer Bun, `bunx @uge/payo` works too.
172
+
173
+ **To develop Payo:** [Bun](https://bun.sh) **>= 1.1.0** (the project builds, tests,
174
+ and runs from source with Bun — see [Run locally](#run-locally)).
126
175
 
127
- ## Development & Contributing
176
+ ## Run locally
128
177
 
129
- Contributions are welcome.
178
+ Hacking on Payo or running it from source:
130
179
 
131
180
  ```bash
132
181
  git clone https://github.com/uttam-gelot/payo.git
133
182
  cd payo
134
- bun install
135
- bun dev # run the CLI from source
183
+ bun install # Bun >= 1.1.0
184
+ bun run dev # runs src/index.ts directly
185
+ ```
186
+
187
+ Other useful scripts:
188
+
189
+ ```bash
190
+ bun test # run the test suite
191
+ bun run typecheck # tsc --noEmit
192
+ bun run lint # eslint
193
+ bun run build # bundle to dist/ (Node target)
136
194
  ```
137
195
 
138
- | Script | What it does |
139
- | ------------------- | ------------------------------------- |
140
- | `bun dev` | Run the CLI from source (no build) |
141
- | `bun run typecheck` | Type-check with `tsc --noEmit` |
142
- | `bun run lint` | Lint `src` and `tests` with ESLint |
143
- | `bun run format` | Format with Prettier |
144
- | `bun test` | Run the test suite |
145
- | `bun run build` | Bundle to `dist/` |
196
+ ## Contributing
146
197
 
147
- CI runs `typecheck`, `lint`, and `test` on every pull request please make sure
148
- they pass locally before opening one.
198
+ Contributions are welcome new frameworks, ORMs, AI tools, and fixes. See
199
+ **[CONTRIBUTING.md](CONTRIBUTING.md)** for setup, the project layout, how to add
200
+ a stack module, and the pre-PR checklist.
149
201
 
150
202
  ## License
151
203
 
152
- [MIT](#license)
204
+ [MIT](LICENSE)
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uge/payo",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "CLI tool to generate AI rules and skills for your project",
5
5
  "repository": {
6
6
  "type": "git",