Discover, share, and deploy 150+ curated n8n automation workflows.
Built with ❤️ in India 🇮🇳
|
|
Get FlowKit running locally in under 5 minutes!
- Node.js 18.x or higher (Download)
- MySQL 8.x or compatible database provider
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/harshit-exe/FlowKit.git cd FlowKit -
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env
Edit
.envand configure your database and API keys (see Environment Variables below) -
Set up the database
# Generate Prisma client npx prisma generate # Push schema to database npx prisma db push # Seed with sample data (super admin + workflows) npx prisma db seed
-
Start the development server
npm run dev
-
Open your browser 🎉
- Public site: http://localhost:3000
- Admin panel: http://localhost:3000/admin
Default Admin Credentials:
- Email:
[email protected] - Password:
Admin@123!
⚠️ Change these credentials immediately after first login!
Create a .env file in the root directory with the following variables:
| Variable | Required | Description | Example |
|---|---|---|---|
DATABASE_URL |
✅ Yes | MySQL connection string | mysql://user:pass@host:3306/flowkit |
NEXTAUTH_URL |
✅ Yes | Your app's base URL | http://localhost:3000 |
NEXTAUTH_SECRET |
✅ Yes | Secret for JWT encryption | Generate with openssl rand -base64 32 |
GEMINI_API_KEY |
✅ Yes | Google Gemini API key | Get from Google AI Studio |
RESEND_API_KEY |
✅ Yes | Email service API key | Get from Resend |
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME |
✅ Yes | Cloudinary cloud name | From Cloudinary Console |
CLOUDINARY_API_KEY |
✅ Yes | Cloudinary API key | From Cloudinary Console |
CLOUDINARY_API_SECRET |
✅ Yes | Cloudinary API secret | From Cloudinary Console |
GROQ_API_KEY |
Groq AI for thumbnails | Get from Groq Console | |
NEXT_PUBLIC_CLARITY_PROJECT_ID |
Microsoft Clarity analytics | From Clarity | |
NEXT_PUBLIC_ENABLE_ACCESS_GATE |
Enable waitlist feature | true or false (default: false) |
💡 Tip: Check
.env.examplefor detailed descriptions and instructions for each variable.
FlowKit supports any MySQL-compatible database. Here are some recommended providers:
# Install MySQL locally
brew install mysql # macOS
# or download from https://dev.mysql.com/downloads/
# Create database
mysql -u root -p
CREATE DATABASE flowkit;- Aiven - Free tier available, excellent performance
- PlanetScale - Serverless MySQL, generous free tier
- Railway - Easy setup, good for development
If your database requires SSL, append to your DATABASE_URL:
?sslaccept=strict
# Generate Prisma Client (after schema changes)
npx prisma generate
# Push schema changes to database (development)
npx prisma db push
# Run migrations (production)
npx prisma migrate deploy
# Seed database with sample data
npx prisma db seed
# Open Prisma Studio (visual database editor)
npx prisma studioflowkit/
├── prisma/
│ ├── schema.prisma # Database schema
│ └── seed.ts # Database seeding script
├── src/
│ ├── app/
│ │ ├── (public)/ # Public-facing pages
│ │ │ ├── page.tsx # Homepage
│ │ │ ├── workflows/ # Workflow listings & details
│ │ │ └── ai-builder/ # AI workflow generator
│ │ ├── admin/ # Admin panel
│ │ │ ├── dashboard/ # Admin dashboard
│ │ │ ├── workflows/ # Workflow management
│ │ │ └── categories/ # Category management
│ │ └── api/ # API routes
│ │ ├── workflows/ # Workflow CRUD APIs
│ │ ├── search/ # Search API
│ │ └── ai/ # AI generation API
│ ├── components/
│ │ ├── admin/ # Admin-specific components
│ │ ├── layout/ # Layout components (navbar, footer)
│ │ ├── workflow/ # Workflow display components
│ │ └── ui/ # shadcn/ui components
│ ├── lib/
│ │ ├── prisma.ts # Prisma client instance
│ │ ├── auth.ts # NextAuth configuration
│ │ ├── gemini.ts # Google Gemini AI client
│ │ └── utils.ts # Utility functions
│ └── types/ # TypeScript type definitions
├── public/
│ ├── thumbnails/ # Workflow thumbnail images
│ └── assets/ # Static assets
└── package.json
FlowKit provides a RESTful API for managing workflows:
GET /api/workflows- List all workflows (with pagination & filters)POST /api/workflows- Create a new workflowGET /api/workflows/[id]- Get workflow by IDPUT /api/workflows/[id]- Update workflowDELETE /api/workflows/[id]- Delete workflowGET /api/workflows/[id]/stats- Get workflow statistics
GET /api/search- Search workflows by keywords, tags, categoriesGET /api/categories- List all categoriesGET /api/tags- List all tags
POST /api/ai/generate- Generate workflow using AI (Gemini)
POST /api/workflows/[id]/vote- Upvote/downvote workflowPOST /api/workflows/[id]/save- Save workflow to collectionGET /api/workflows/[id]/comments- Get workflow comments
📖 For detailed API documentation, visit our API Reference.
-
Push to GitHub
git push origin main
-
Import to Vercel
- Go to vercel.com
- Click "New Project"
- Import your GitHub repository
- Vercel will auto-detect Next.js
-
Configure Environment Variables
- Add all variables from your
.envfile - Update
NEXTAUTH_URLto your production domain
- Add all variables from your
-
Deploy
- Click "Deploy"
- Your app will be live in ~2 minutes!
Before deploying to production:
- Change default admin password
- Use strong
NEXTAUTH_SECRET(generate new one) - Configure production database with SSL
- Set up proper email service (Resend recommended)
- Enable Cloudinary for image uploads
- Configure domain for
NEXTAUTH_URL - Set up analytics (optional but recommended)
- Review and update
robots.txtandsitemap.xml - Test all workflows and admin features
- Set up database backups
Docker Deployment
# Coming soon - Dockerfile in progressTraditional Hosting (PM2)
# Build the application
npm run build
# Start with PM2
pm2 start npm --name "flowkit" -- start- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Database: MySQL with Prisma ORM
- Authentication: NextAuth.js
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- AI: Google Gemini 2.0 Flash
- Email: Resend / Nodemailer
- Image Upload: Cloudinary
- Analytics: Vercel Analytics, Microsoft Clarity
We love contributions! FlowKit is better because of developers like you. 🙌
- 🐛 Report bugs - Found an issue? Open a bug report
- ✨ Suggest features - Have ideas? Request a feature
- 📝 Improve documentation - Help others understand FlowKit better
- 🔧 Submit PRs - Fix bugs or add features
- 📦 Share workflows - Contribute your n8n workflows
- Fork the repository
- Create your feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'feat: add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
📖 Read our Contributing Guide for detailed guidelines and coding standards.
Database connection issues
Error: PrismaClientInitializationError: Can't reach database server
Solutions:
- Verify your
DATABASE_URLis correct - Check if MySQL is running:
mysql -u root -p - For cloud databases, ensure your IP is whitelisted
- Try appending
?sslaccept=strictfor SSL connections
Prisma Client errors
Error: @prisma/client did not initialize yet
Solutions:
- Run
npx prisma generateto generate the client - Delete
node_modulesand reinstall:rm -rf node_modules && npm install - Restart your dev server
Authentication not working
Issue: Can't login to admin panel
Solutions:
- Ensure
NEXTAUTH_SECRETis set in.env - Check
NEXTAUTH_URLmatches your current URL (including port) - Verify database has seeded users:
npx prisma studio - Clear browser cookies and try again
Email sending fails
Error: Email notifications not being sent
Solutions:
- Verify
RESEND_API_KEYis valid - Check your Resend domain is verified
- Ensure sender email is configured in Resend
- Check API rate limits haven't been exceeded
Build errors
Error: Type errors or build failures
Solutions:
- Run
npx prisma generatefirst - Check TypeScript version:
npm list typescript - Clear Next.js cache:
rm -rf .next - Verify all required environment variables are set
💡 Still stuck? Open an issue and we'll help!
Coming soon! Check out the live demo in the meantime.
This project is licensed under the MIT License - see the LICENSE file for details.
FlowKit wouldn't be possible without these amazing projects:
- n8n - The powerful workflow automation tool that inspired this project
- shadcn/ui - Beautiful and accessible UI components
- Google Gemini - AI-powered workflow generation
- Vercel - Hosting and deployment platform
- All our contributors ❤️
- 🌐 Website: flowkit.in
- 💬 Discussions: GitHub Discussions
- 🐛 Issues: GitHub Issues
- 👤 Author: @harshit-exe
Built with ❤️ in India 🇮🇳
If FlowKit helped you, consider giving it a ⭐ on GitHub!