AI-powered project planning: from idea to PRD to Tech Spec to Tasks in minutes.
PlanForge is a self-hosted project planning tool that uses AI to generate comprehensive project documentation from a simple idea. It creates Product Requirements Documents (PRDs), Technical Specifications, and actionable tasks - all organized in a Kanban board.
- AI-Powered Generation - Transform project ideas into structured documentation
- PRD Generation - Automatic Product Requirements Document creation
- Tech Spec Generation - Detailed technical specifications based on the PRD
- Kanban Board - Drag-and-drop task management with Flowforge
- Regeneration - Regenerate individual documents or the entire pipeline
- Export - Download project kit as ZIP (PRD, Tech Spec, Tasks, metadata)
- Rate Limit Resilience - Graceful handling of API rate limits with automatic retries
- Backend: Laravel 12, PHP 8.3+
- Frontend: Livewire 3, Alpine.js, Tailwind CSS
- AI: PrismPHP (Anthropic Claude, OpenAI, and more)
- Kanban: Filament 4 + Flowforge
- Database: SQLite (default) or MySQL/PostgreSQL
- Queue: Database driver (Redis optional)
- PHP 8.3+
- Composer
- Node.js 18+
- An Anthropic API key (get one here)
# Clone the repository
git clone https://github.com/MujahidAbbas/planforge.git
cd planforge
# Install dependencies
composer install
npm install
# Setup environment
cp .env.example .env
php artisan key:generate
# Add your Anthropic API key to .env
# ANTHROPIC_API_KEY=sk-ant-...
# Create database and run migrations
touch database/database.sqlite
php artisan migrate
# Build frontend assets
npm run build
# Seed demo data (optional)
php artisan db:seed --class=DemoSeeder# Start all services (server, queue, logs, vite)
composer dev
# Or run individually:
php artisan serve # Web server
php artisan queue:listen # Queue worker (required for AI generation)
npm run dev # Vite dev serverVisit http://localhost:8000/projects to get started.
- Create a Project - Enter your project idea and any constraints
- Generate - Click "Generate All" to create PRD, Tech Spec, and Tasks
- Review & Edit - Edit the generated documents in the PRD and Tech tabs
- Manage Tasks - Drag tasks between columns in the Kanban board
- Regenerate - Use the Regenerate dropdown to refresh specific documents
- Export - Download your project kit as a ZIP file
app/
├── Actions/ # Business logic (StartPlanRun, Regenerate*)
├── Enums/ # Status enums (PlanRunStatus, TaskStatus, etc.)
├── Jobs/ # Queue jobs (GeneratePrdJob, GenerateTechSpecJob)
├── Livewire/ # Livewire components
│ └── Projects/
│ ├── Workspace.php
│ └── Tabs/ # PRD, Tech, Kanban, Export tabs
├── Models/ # Eloquent models
└── Services/ # Services (ProjectKitExporter)
resources/
├── views/
│ ├── livewire/ # Livewire component views
│ └── prompts/ # AI prompt templates
└── css/ # Tailwind styles
# Run all tests
./vendor/bin/pest
# Run specific test file
./vendor/bin/pest tests/Feature/ExportTest.php
# Run with coverage
./vendor/bin/pest --coveragePlanForge uses Anthropic Claude by default. Configure in .env:
ANTHROPIC_API_KEY=sk-ant-...For production, consider using Redis:
QUEUE_CONNECTION=redis
REDIS_HOST=127.0.0.1- Task generation from Tech Spec
- GitHub Issues export
- Multiple AI provider support
- Team collaboration
- Project templates
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
If you discover a security vulnerability, please see SECURITY.md for reporting instructions.
PlanForge is open-source software licensed under the MIT license.