You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Add 54 unit tests (vitest) across scorer, rules, audit
- Fix scoring weights: critical=-20, warning=-8, info=-2
- Add --min-score <n> flag for CI/CD threshold gates
- Add --fail-on warnings strict mode for CI
- Fix hardcoded version in cli.ts (reads from package.json at runtime)
- Add .github/workflows/ci.yml with build + smoke test
- Add .npmignore and files[] in package.json for clean publish
- Add types field to package.json for TypeScript consumers
- Add test script + vitest to devDependencies
- Improve reporter: title display, sorted findings within categories, pass suggestions suppressed, cleaner summary line
- Update README with new flags, updated grade table, programmatic API
54 tests passing. Ready for npm publish.
**Roast any landing page for conversion issues. Get actionable fixes in seconds.**
4
8
5
9
Stop guessing why your landing page isn't converting. `landing-roast` runs 20+ conversion heuristics against any URL and tells you exactly what's broken — with specific fixes.
Severity weights: Critical (-15), Warning (-7), Info (-2), Pass (0).
110
125
111
-
## Why This Exists
126
+
## Contributing
112
127
113
-
Every marketer has shipped a landing page and wondered "why isn't this converting?" The answer is usually a handful of basic mistakes — no clear CTA, missing social proof, slow load time, broken mobile experience.
128
+
Contributions welcome! Here's how:
114
129
115
-
Tools like Google Lighthouse cover performance. `landing-roast` covers **conversion** — the stuff that actually makes people buy.
130
+
1. Fork the repo
131
+
2. Create a feature branch (`git checkout -b feat/my-rule`)
132
+
3. Add your rule to `src/rules.ts` and register it in `allRules`
133
+
4. Add tests in `test/rules.test.ts`
134
+
5. Run `npm test` to verify
135
+
6. Open a PR
116
136
117
-
Built by [Ad Machine](https://admachine.ai) — the AI ad creative platform.
137
+
### Adding a new rule
118
138
119
-
## Contributing
139
+
Rules are simple functions that take a `PageData` and Cheerio instance, and return `Finding[]`:
120
140
121
-
PRs welcome. The rule system is modular — add a new rule in `src/rules.ts` and it automatically runs.
0 commit comments