{"id":35542596,"url":"https://github.com/allthriveai/vibe-and-thrive","last_synced_at":"2026-01-23T06:41:10.455Z","repository":{"id":328775767,"uuid":"1113478807","full_name":"allthriveai/vibe-and-thrive","owner":"allthriveai","description":"Free Tools and guardrails that catch common AI coding mistakes before they hit your codebase.","archived":false,"fork":false,"pushed_at":"2026-01-04T07:16:55.000Z","size":260,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-13T19:44:29.577Z","etag":null,"topics":["vibe-coding"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/allthriveai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-10T03:17:25.000Z","updated_at":"2026-01-04T07:16:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/allthriveai/vibe-and-thrive","commit_stats":null,"previous_names":["allthriveai/vibe-and-thrive"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/allthriveai/vibe-and-thrive","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allthriveai%2Fvibe-and-thrive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allthriveai%2Fvibe-and-thrive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allthriveai%2Fvibe-and-thrive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allthriveai%2Fvibe-and-thrive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/allthriveai","download_url":"https://codeload.github.com/allthriveai/vibe-and-thrive/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/allthriveai%2Fvibe-and-thrive/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28405302,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T21:51:37.118Z","status":"ssl_error","status_checked_at":"2026-01-13T21:45:14.585Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["vibe-coding"],"created_at":"2026-01-04T05:13:59.524Z","updated_at":"2026-01-23T06:41:10.445Z","avatar_url":"https://github.com/allthriveai.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vibe and Thrive\n\n**Ship quality code faster with AI.**\n\nA toolkit for implementing [RALPH](https://ghuntley.com/ralph/) with [Claude Code](https://docs.anthropic.com/en/docs/claude-code) that helps you go from idea to shipped code.\n\n\u003e You focus on what matters: your ideas. Brainstorm with `/idea`, then let Ralph handle the rest - coding, testing, and committing in an iterative loop until everything passes.\n\n### This repo includes: \n#### Customize\n- **`/my-dna`** - Add your own voice and values to your claude.md (This helps you personalize your experience and output)\n- **`/styleguide`** - Generate a UI component reference for consistent design (Stop AI from generating everything in purple add your unique style in an html and then reference it)\n\n#### Autonmous Code Loops with RALPH principles\nRun this in the terminal not in a claude cli session. It will use your claude subscription not an API key.\n- **`npx ralph run`** - RALPH Autonomous loop: Brainstorm ideas → turn ideas into atomic prds → implement → verify → commit → repeat\n\n#### Guardrails\n- **`/vibe-check`** - manually run the same automated tests and guardrail checks at any time\n- **`/review`** - manually run the same automated Security-focused code review with OWASP checks\n- **Pre-commit hooks** - Automatically block secrets, hardcoded URLs, and security issues with precommit hooks from entering into your git repo. Catch and fix issues before your CI/CD does\n- **Claude Code hooks** - Real-time warnings while coding (debug statements, secrets, hardcoded URLs)\n\n---\nSee More for on how the [RALPH loop](docs/RALPH.md) works in this repo\n\n---\n\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js 18+\n- [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI installed and authenticated\n- `jq` (for config management): `brew install jq` or `apt install jq`\n- Optional: [Playwright](https://playwright.dev/) for browser verification (installed automatically by `/tour`)\n\n\n## Step 0: Install\n\n```bash\ncd [your-project]\nnpm install vibe-and-thrive\n```\n\nThis automatically sets up:\n- Slash commands (`/idea`, `/review`, etc.)\n- Pre-commit hooks (secrets, URLs, debug statements)\n- Claude Code hooks (real-time warnings)\n- Ralph configuration files\n\n\u003e **Note:** Claude Code hooks require `jq`. On macOS with Homebrew, it's installed automatically. On Linux, if you see a warning, run `sudo apt install jq` (or your package manager) then `npx ralph hooks`.\n\n## Step 1: Start claude (--dangerously-skip-permissions is optional)\n\n```bash\nclaude --dangerously-skip-permissions \n```\n\n## Step 1b: Optional run tour and customizations \nInside of a claude session run \n```\n /tour\n```\n1. The tour auto-detects your project settings and walks you through the workflow.\n2. You can set up your own styleguide for all your frontend work to reference. I highly recommend you do this. \n3. run /my-dna to add your own writing style, core values, and things you want represented in your application so that your app represents you and what you want.   \n\n### Step 2: Brainstorm Your Idea\n\n```\n/idea [describe your next feature]\n```\n\nClaude asks clarifying questions, explores your codebase, then generates:\n- `docs/ideas/your-feature.md` - The documented idea\n- `.ralph/prd.json` - Atomic stories for Ralph\n\nReview and approve when prompted.\n\n\u003e **Note:** If Claude skips writing to `docs/ideas/`, tell it: \"Please write the idea to docs/ideas/ and generate the PRD as the /idea command specifies\"\n\n### Step 3: Execute with Ralph\n\nType `/exit` or open a new terminal, then run:\n\n```bash\nnpx ralph run\n```\n\nRalph loops through stories one at a time, writes tests, verifies, and commits.\n\n\u003e **Pro tip:** Use two terminals - plan with Claude in one, run Ralph in another.\n\n## Ralph Details\n\n```\n┌─────────────────────────────────────────────────────────────┐\n│                        RALPH LOOP                           │\n├─────────────────────────────────────────────────────────────┤\n│                                                             │\n│  1. Read prd.json → find next story where passes=false      │\n│  2. Build prompt (story + context + failures + signs)       │\n│  3. Spawn Claude with prompt                                │\n│  4. Run verification (build, tests, browser, code review)   │\n│  5. Pass? → commit, next story                              │\n│     Fail? → save error, retry with failure context          │\n│  6. Repeat until all stories pass                           │\n│                                                             │\n└─────────────────────────────────────────────────────────────┘\n```\n\n---\n\n## Documentation\n\n| Doc | Description |\n|-----|-------------|\n| [How Ralph Works](docs/RALPH.md) | Architecture, config, troubleshooting |\n| [Cheatsheet](docs/CHEATSHEET.md) | All commands, quick reference |\n| [Workflow Guide](docs/WORKFLOW.md) | End-to-end development process |\n| [Hooks Reference](docs/HOOKS.md) | Pre-commit and Claude Code hooks |\n| [Bad Patterns](docs/BAD-PATTERNS.md) | AI code issues to avoid |\n| [Prompting Guide](docs/PROMPTING-GUIDE.md) | Writing effective PROMPT.md |\n| [TDD Guide](docs/TDD.md) | Test-driven development with Ralph |\n| [Styleguide](docs/STYLEGUIDE.md) | Creating UI component references |\n| [Contributing](docs/CONTRIBUTING.md) | How to contribute |\n\n## Project Structure\n\n```\nvibe-and-thrive/\n├── .claude/commands/       # Slash commands (/idea, /review, etc.)\n├── ralph/                  # Autonomous loop (Bash)\n│   ├── hooks/              # Claude Code hooks (real-time warnings)\n│   ├── browser-verify/     # Playwright verification\n│   └── setup/              # Setup wizards (/tour)\n├── src/                    # Pre-commit checks (TypeScript)\n│   └── checks/             # Check implementations (secrets, urls, etc.)\n├── templates/              # Files for user projects\n│   ├── PROMPT.md           # Base prompt for Ralph sessions\n│   ├── config/             # Project type configs (node, python)\n│   ├── optional/           # Extra configs (eslint, vscode, etc.)\n│   └── examples/           # Example CLAUDE.md files by stack\n├── docs/                   # Documentation\n└── bin/                    # CLI entry points (ralph, vibe-check)\n```\n\n### Three Layers of Quality Checks\n\n| Layer | When | What |\n|-------|------|------|\n| **Slash commands** | In Claude Code CLI | `/vibe-check`, `/review` - on-demand checks |\n| **Claude Code hooks** | While Claude writes code | Real-time warnings (debug statements, secrets) |\n| **Pre-commit hooks** | At `git commit` | Blocks secrets, URLs, debug statements |\n\n---\n\n## Troubleshooting\n\n### \"SessionStart: startup hook error\"\n\nThis means Claude Code hooks are configured but the hook scripts can't be found. Fix with:\n\n```bash\n# Reinstall project hooks\nnpx ralph hooks --force\n\n# Or reinstall global hooks (if using vibe-and-thrive source repo)\n/path/to/vibe-and-thrive/ralph/hooks/install.sh --global --force\n```\n\n### Hooks not working after moving project\n\nClaude Code hooks use absolute paths. After moving a project or cloning on a new machine, reinstall hooks:\n\n```bash\nnpx ralph hooks --force\n```\n\n### Team members getting hook errors\n\n`.claude/settings.json` contains machine-specific paths and should not be committed to git. The postinstall script automatically adds it to `.gitignore`. Each team member's hooks are configured when they run `npm install`.\n\nIf `.claude/settings.json` was accidentally committed:\n```bash\ngit rm --cached .claude/settings.json\necho \".claude/settings.json\" \u003e\u003e .gitignore\ngit commit -m \"Remove machine-specific settings from git\"\n```\n\n### jq not installed\n\nClaude Code hooks require `jq` for JSON manipulation. On macOS with Homebrew, `npx ralph hooks` installs it automatically. On Linux:\n\n```bash\n# Ubuntu/Debian\nsudo apt install jq\n\n# Fedora/RHEL\nsudo dnf install jq\n\n# Then install hooks\nnpx ralph hooks\n```\n\n---\n\n## License\n\nMIT - see [LICENSE](LICENSE)\n\n---\n\nBuilt by [AllThrive AI](https://allthrive.ai)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallthriveai%2Fvibe-and-thrive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fallthriveai%2Fvibe-and-thrive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallthriveai%2Fvibe-and-thrive/lists"}