This Full Stack SaaS application allows users to visually build, manage, and schedule web scrapers using a workflow builder powered by AI. π€ Users can create, modify, and delete workflows with an intuitive drag-and-drop interface. The integration of AI simplifies the web scraping process, making it accessible to both technical and non-technical users. π
- π Visual Workflow Builder: Drag-and-drop interface to design scraping workflows effortlessly. π§
- π€ AI Assistance: AI-powered suggestions for selectors, workflow optimization, and error handling. π
- π Credential Management: Securely manage login credentials for scraping protected websites. π
- β³ Scheduling System: Set up automatic scraping schedules for periodic data extraction. β°
- ποΈ Workflow Management: Create, modify, delete, and duplicate workflows with ease. π
- π Data Export: Export scraped data in various formats (e.g., CSV, JSON). π
- π Server-Side Rendering (SSR) for optimized SEO and performance.
- π API Routes to handle backend logic.
- π Dynamic Routing for user-specific workflows.
- π Built-in Authentication using Clerk Authentication for secure user sessions.
- π» Node.js (v16 or later)
- π PostgreSQL database
- π§ API Key for OpenAI
-
π Clone the repository
git clone https://github.com/BernieTv/Workflows-App.git cd Workflows-App
-
π¦ Install dependencies
npm install
-
π Set up environment variables Create a
.env
file in the root directory and add the following:NEXT_PUBLIC_OPENAI_API_KEY=your_openai_api_key DATABASE_URL=postgresql://username:password@localhost:5432/yourdb NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_secret CLERK_SECRET_KEY=sk_
-
π§ Run database migrations
npx prisma migrate dev
-
π Start the development server
npm run dev
The app will be available at
http://localhost:3000
. π
- Use Clerk Authentication to sign up or log in to your account. π
- Drag and drop nodes to define scraping tasks. π
- Use AI suggestions for selector optimization. π€
- Securely store website login credentials if required. π
- Use the scheduling feature to automate scraping tasks. π°οΈ
- Download scraped data in the desired format. π
- π Start development server:
npm run dev
- π Build for production:
npm run build
- π Run production server:
npm start
- π’ Lint code:
npm run lint
- π Format code:
npm run format