FlowProof is a comprehensive n8n workflow validation platform that provides static analysis, webhook testing, and automated quality reporting with shareable badges.
- Workflow Analysis: Static code analysis for n8n workflows with detailed lint results
- Webhook Testing: Test n8n webhooks with custom headers, authentication (Basic Auth, Bearer Token, API Key), and payload configuration
- Client Reports: Automated quality reports for client delivery
- Quality Badges: Shareable badges showcasing workflow quality
- Badge Verification: Public verification system for badge authenticity
- Light/Dark Theme: Full theme support with smooth transitions
This project is built with:
- Frontend: Vite + React + TypeScript
- UI Components: shadcn-ui + Tailwind CSS
- State Management: Zustand
- Backend: Express.js
- Icons: Lucide React
- Node.js & npm installed - install with nvm
# Clone the repository
git clone <YOUR_GIT_URL>
# Navigate to the project directory
cd flowproof-studio
# Install dependencies
npm i
# Start the development server
npm run devThe application will be available at http://localhost:8080
npm run devThis starts both the frontend (Vite) and backend (Express) servers concurrently.
npm run buildnpm run testCreate a .env.local file in the root directory with the following variables:
VITE_API_BASE_URL=http://localhost:3001
# Add other environment variables as neededflowproof-studio/
├── public/ # Static assets (icons, images)
├── server/ # Express backend
│ ├── routes/ # API route handlers
│ └── api/ # API utilities
├── src/
│ ├── components/ # React components
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utilities and helpers
│ ├── pages/ # Page components
│ └── store/ # Zustand state management
└── ...
FlowProof supports multiple authentication methods for webhook testing:
- Basic Auth: Username/password with automatic Base64 encoding
- Bearer Token: JWT or API tokens
- API Key: Custom header-based authentication
- Custom Headers: Fully customizable header configuration
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.
For questions or support, please open an issue on GitHub.