PlanCanvas is an interactive diagram creation tool powered by AI that helps you visualize and design systems through natural language descriptions.
- 🎨 Interactive Excalidraw Canvas
- 💬 Natural Language Input
- 🤖 AI-Powered Diagram Generation
- 🔄 Real-time Updates
- 📱 Responsive Design
PlanCanvas/
├── frontend/ # React TypeScript frontend
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API services
│ │ └── types/ # TypeScript types
│ └── package.json
│
└── backend/ # Python FastAPI backend
├── app/
│ ├── agents/ # AI agents for diagram generation
│ ├── core/ # Core business logic
│ └── main.py # FastAPI application
└── requirements.txt
- Node.js 16+
- Python 3.8+
- OpenAI API Key
cd frontend
npm install
npm run devThe frontend will be available at http://localhost:5173
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python -m uvicorn app.main:app --reloadThe backend API will be available at http://localhost:8000
Create a .env file in the frontend directory:
VITE_API_BASE_URL=http://localhost:8000
Create a .env file in the backend directory:
OPENAI_API_KEY=your_api_key_here
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
