{/* Infinite Canvas - Zoom and pan without limits */} The Only Limit is Your Imagination.
Scroll to zoom • Drag to pan • Connect nodes
Visualize data flows between tables
Add tables • Create processes • Connect data flows
import { useState, useEffect } from 'react' import './App.css' import InfiniteCanvas from './components/InfiniteCanvas' import AdvancedCharts from './components/AdvancedCharts' import DataflowCanvas from './components/DataflowCanvas' import { FaDatabase, FaChartBar, FaProjectDiagram } from 'react-icons/fa' function App() { const [activeTab, setActiveTab] = useState('canvas'); // 'canvas', 'charts', or 'dataflow' // Listen for the custom event to switch to DataFlow tab useEffect(() => { const handleViewDataFlow = (event) => { // Switch to the dataflow tab setActiveTab('dataflow'); // Log the database info (in a real app, you would use this to initialize the DataFlow view) console.log('Viewing DataFlow for database:', event.detail); }; // Add event listener window.addEventListener('viewDataFlow', handleViewDataFlow); // Clean up return () => { window.removeEventListener('viewDataFlow', handleViewDataFlow); }; }, []); return (
{/* Infinite Canvas - Zoom and pan without limits */} The Only Limit is Your Imagination.
Scroll to zoom • Drag to pan • Connect nodes
Visualize data flows between tables
Add tables • Create processes • Connect data flows