License: MIT GitHub stars GitHub issues PRs Welcome Next.js TypeScript
Discover, share, and deploy 150+ curated n8n automation workflows.
Built with โค๏ธ in India ๐ฎ๐ณ
Live Demo ยท Documentation ยท Report Bug ยท Request Feature
- 150+ Curated Workflows - Hand-picked and tested
- AI Workflow Builder - Generate workflows with Gemini AI
- Advanced Search & Filters - Find exactly what you need
- Instant Copy/Download - Get workflows in one click
- Community Features - Comments, votes, and saves
- Modern Stack - Next.js 14, TypeScript, Prisma
- Production Ready - Secure, scalable, optimized
- Admin Panel - Full CRUD operations
- API Routes - RESTful endpoints included
- Open Source - MIT licensed, contribute freely
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:
admin@flowkit.in - 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 studio
flowkit/
โโโ 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!