@uge/payo 0.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.
Files changed (3) hide show
  1. package/README.md +149 -0
  2. package/dist/index.js +196 -0
  3. package/package.json +58 -0
package/README.md ADDED
@@ -0,0 +1,149 @@
1
+ <div align="center">
2
+
3
+ # Payo
4
+
5
+ **Generate project-tailored AI assistant rules & skills in under two minutes.**
6
+
7
+ Payo interviews you about your stack, then writes the guidance files your AI
8
+ coding assistant reads — so Claude, Cursor, Copilot, and friends follow _your_
9
+ project's conventions instead of guessing.
10
+
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)
13
+ [![Bun](https://img.shields.io/badge/Bun-%3E%3D1.1.0-black?logo=bun)](https://bun.sh)
14
+ [![Made with TypeScript](https://img.shields.io/badge/TypeScript-strict-3178c6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
15
+
16
+ </div>
17
+
18
+ ---
19
+
20
+ ## Quick Start
21
+
22
+ No install required — run it in any project directory:
23
+
24
+ ```bash
25
+ npx payo
26
+ # or
27
+ bunx payo
28
+ ```
29
+
30
+ Answer a short questionnaire about your stack, and Payo drops tailored AI
31
+ guidance files straight into your repo.
32
+
33
+ ## What is Payo?
34
+
35
+ AI coding assistants are only as good as the context they're given. Payo is an
36
+ interactive CLI that **interviews you about your project** — language, framework,
37
+ database, auth, testing, conventions — and then **generates the guidance files
38
+ your assistant actually reads.**
39
+
40
+ It supports **Claude, Cursor, GitHub Copilot, Codex, Windsurf, and Antigravity**.
41
+ Where the assistant ships a headless CLI, Payo drives that tool's own AI to
42
+ write rich, project-specific docs; where it doesn't, Payo falls back to solid
43
+ templates — so you always end up with usable output.
44
+
45
+ ## How it works
46
+
47
+ 1. **Answer the questionnaire.** A focused set of questions about your stack and
48
+ conventions. Smart defaults mean you can accept recommendations and move fast.
49
+ 2. **Payo generates the guidance.** It runs your AI tool's headless CLI in
50
+ parallel to write tailored rules/skills — or writes static templates if the
51
+ CLI isn't available.
52
+ 3. **(Optional) Get a bootstrap prompt.** Payo can write a paste-ready
53
+ `bootstrap-prompt.md` you hand to any LLM to scaffold a runnable project that
54
+ honors the guidance it just generated.
55
+
56
+ ## Supported AI tools
57
+
58
+ Each tool gets files in its own native format and location:
59
+
60
+ | Tool | Files generated |
61
+ | -------------------- | --------------------------------------------------------------- |
62
+ | Claude (Anthropic) | `CLAUDE.md` · `.claude/skills/**` |
63
+ | Cursor | `.cursorrules` · `.cursor/rules/**` |
64
+ | GitHub Copilot | `.github/copilot-instructions.md` · `.github/instructions/**` |
65
+ | Codex CLI | `AGENTS.md` |
66
+ | Antigravity (Google) | `AGENTS.md` · `.agents/skills/**` |
67
+ | Windsurf | `.windsurfrules` |
68
+ | Other / generic | `AI_RULES.md` |
69
+
70
+ > Rich AI generation needs the selected tool's CLI on your `PATH`. Without it,
71
+ > Payo writes well-structured template defaults instead.
72
+
73
+ ## What it asks about
74
+
75
+ Payo understands **25 frameworks, 24 ORMs, and 4 databases** across
76
+ **TypeScript/JavaScript, Python, Go, and Rust** — and tailors its follow-up
77
+ questions to whatever you pick. Dimensions covered:
78
+
79
+ - **Project** — type (frontend / backend / full-stack) and a short description
80
+ - **Language & framework** — plus framework-specific conventions
81
+ - **API** — REST, GraphQL, gRPC, tRPC
82
+ - **Frontend** — styling and state management
83
+ - **Data** — database and ORM/data-layer, with naming & migration conventions
84
+ - **Auth** — approach, session strategy, RBAC
85
+ - **Validation & logging** — stack-appropriate libraries
86
+ - **Testing** — unit / integration / component / E2E and runners
87
+ - **Tooling** — package manager, runtime, formatter, linter
88
+ - **TypeScript** — `tsconfig` strictness, target, module resolution, path aliases
89
+ - **Conventions** — folder structure, coding standards, docs, git workflow
90
+
91
+ ## AI vs. template generation
92
+
93
+ Payo always leaves you with output. When the chosen assistant's headless CLI
94
+ is installed, it generates each guidance file in parallel from your answers —
95
+ richer and more specific. When the CLI is missing, or every run fails, it falls
96
+ back to static templates.
97
+
98
+ A few environment variables tune AI generation:
99
+
100
+ | Variable | Default | Purpose |
101
+ | -------------------------- | -------- | ------------------------------------ |
102
+ | `PAYO_CONCURRENCY` | `4` | Max parallel agent subprocesses |
103
+ | `PAYO_RETRIES` | `1` | Extra attempts after a failed run |
104
+ | `PAYO_AGENT_TIMEOUT_MS` | `120000` | Wall-clock cap per file (ms) |
105
+
106
+ ## Bootstrap prompt
107
+
108
+ An empty repo with great guidance is still an empty repo. After generating, Payo
109
+ offers to write a **`bootstrap-prompt.md`** — a paste-ready prompt that tells any
110
+ LLM to scaffold a runnable project using the stack's **official tooling** (the
111
+ framework's own `create` command / CLI), honor the generated conventions, and
112
+ iterate with you until it runs.
113
+
114
+ ## Resume anytime
115
+
116
+ Interrupt a run and pick up where you left off. Payo saves your questionnaire
117
+ answers and generation progress under `.payo/`; rerun and it resumes, only
118
+ generating what's missing. Finished runs clean the directory up automatically.
119
+
120
+ ## Requirements
121
+
122
+ - [Bun](https://bun.sh) **>= 1.1.0**
123
+
124
+ ## Development & Contributing
125
+
126
+ Contributions are welcome.
127
+
128
+ ```bash
129
+ git clone https://github.com/uttam-gelot/payo.git
130
+ cd payo
131
+ bun install
132
+ bun dev # run the CLI from source
133
+ ```
134
+
135
+ | Script | What it does |
136
+ | ------------------- | ------------------------------------- |
137
+ | `bun dev` | Run the CLI from source (no build) |
138
+ | `bun run typecheck` | Type-check with `tsc --noEmit` |
139
+ | `bun run lint` | Lint `src` and `tests` with ESLint |
140
+ | `bun run format` | Format with Prettier |
141
+ | `bun test` | Run the test suite |
142
+ | `bun run build` | Bundle to `dist/` |
143
+
144
+ CI runs `typecheck`, `lint`, and `test` on every pull request — please make sure
145
+ they pass locally before opening one.
146
+
147
+ ## License
148
+
149
+ [MIT](#license)