diff --git a/frontend/app/(sidebar)/data-pipeline/create/page.tsx b/frontend/app/(sidebar)/data-pipeline/create/page.tsx
index a382632..a920c96 100644
--- a/frontend/app/(sidebar)/data-pipeline/create/page.tsx
+++ b/frontend/app/(sidebar)/data-pipeline/create/page.tsx
@@ -1,14 +1,33 @@
-import { Button } from "@/components/ui/button"
-import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"
-import { Input } from "@/components/ui/input"
-import { Label } from "@/components/ui/label"
-import { Textarea } from "@/components/ui/textarea"
-import { ArrowLeft, Globe, FileUp, DatabaseIcon, Plus, Trash2, BrainCircuit } from "lucide-react"
-import Link from "next/link"
-import PageHeader from "@/components/page-header"
-import { Badge } from "@/components/ui/badge"
-import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "@/components/ui/accordion"
-import { Switch } from "@/components/ui/switch"
+import { Button } from "@/components/ui/button";
+import {
+ Card,
+ CardContent,
+ CardDescription,
+ CardHeader,
+ CardTitle,
+} from "@/components/ui/card";
+import { Input } from "@/components/ui/input";
+import { Label } from "@/components/ui/label";
+import { Textarea } from "@/components/ui/textarea";
+import {
+ ArrowLeft,
+ Globe,
+ FileUp,
+ DatabaseIcon,
+ Plus,
+ Trash2,
+} from "lucide-react";
+import Link from "next/link";
+import PageHeader from "@/components/page-header";
+import { Badge } from "@/components/ui/badge";
+import {
+ Accordion,
+ AccordionContent,
+ AccordionItem,
+ AccordionTrigger,
+} from "@/components/ui/accordion";
+import { PipelineDetails } from "@/components/pipeline/details";
+import { PipelineAiAssistant } from "@/components/pipeline/ai-assistant";
export default function CreatePipelinePage() {
return (
@@ -33,102 +52,29 @@ export default function CreatePipelinePage() {
-
-
- Pipeline Details
- Basic information about your data pipeline
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Separate tags with commas
-
-
-
-
-
-
-
-
-
-
- AI Assistant
-
- Customize how AI processes your data
-
-
-
-
-
-
-
-
- Provide specific instructions to guide the AI in processing your data sources
-
-
-
-
-
-
-
-
Automatically identify price, location, etc.
-
-
-
-
-
-
-
-
- Get AI suggestions for matching fields across sources
-
-
-
-
-
-
-
-
-
Remove duplicate entries automatically
-
-
-
-
-
-
-
+
+
Data Sources
- Add one or more data sources to your pipeline
+
+ Add one or more data sources to your pipeline
+
-
-
+
+
@@ -139,12 +85,17 @@ export default function CreatePipelinePage() {
-
+
-
+
Pattern Detection
@@ -155,12 +106,17 @@ export default function CreatePipelinePage() {
rows={3}
/>
- Add multiple URLs from the same website (one per line)
+ Add multiple URLs from the same website (one per
+ line)
-
- Supported formats: CSV, JSON, Excel, XML (up to 50MB)
+ Supported formats: CSV, JSON, Excel, XML (up to
+ 50MB)
-
+
Remove Source
@@ -205,7 +169,10 @@ export default function CreatePipelinePage() {
-
+
@@ -216,11 +183,16 @@ export default function CreatePipelinePage() {
-
+
-
+
-
+
@@ -364,7 +372,10 @@ export default function CreatePipelinePage() {
Retry Settings
- )
+ );
}
-
diff --git a/frontend/components/pipeline/ai-assistant.tsx b/frontend/components/pipeline/ai-assistant.tsx
new file mode 100644
index 0000000..810899d
--- /dev/null
+++ b/frontend/components/pipeline/ai-assistant.tsx
@@ -0,0 +1,76 @@
+import { Switch } from "../ui/switch";
+import { BrainCircuit } from "lucide-react";
+import { Label } from "../ui/label";
+import { Card, CardHeader, CardTitle, CardDescription, CardContent } from "../ui/card";
+import { Textarea } from "../ui/textarea";
+
+export function PipelineAiAssistant(){
+ return (
+
+
+
+
+
+ AI Assistant
+
+
+ Customize how AI processes your data
+
+
+
+
+
+
+
Additional Instructions for AI
+
+
+ Provide specific instructions to guide the AI in processing your
+ data sources
+
+
+
+
+
+
+
+ Auto-detect common fields
+
+
+ Automatically identify price, location, etc.
+
+
+
+
+
+
+
+
+ Suggest field mappings
+
+
+ Get AI suggestions for matching fields across sources
+
+
+
+
+
+
+
+
Deduplicate records
+
+ Remove duplicate entries automatically
+
+
+
+
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/frontend/components/pipeline/details.tsx b/frontend/components/pipeline/details.tsx
new file mode 100644
index 0000000..3db90af
--- /dev/null
+++ b/frontend/components/pipeline/details.tsx
@@ -0,0 +1,45 @@
+import { Label } from "../ui/label";
+import { Card, CardHeader, CardTitle, CardDescription, CardContent } from "../ui/card";
+import { Input } from "../ui/input";
+import { Textarea } from "../ui/textarea";
+
+export function PipelineDetails(){
+ return (
+
+
+ Pipeline Details
+
+ Basic information about your data pipeline
+
+
+
+
+
+ Pipeline Name
+
+
+
+
+ Description
+
+
+
+
+
Tags (optional)
+
+
+ Separate tags with commas
+
+
+
+
+
+ );
+}
\ No newline at end of file