TigerTrading commited on
Commit
6e81cb0
Β·
verified Β·
1 Parent(s): 1133e44
README.md CHANGED
@@ -1,10 +1,13 @@
1
  ---
2
- title: Dockfire Reactify Web
3
- emoji: πŸ“Š
4
- colorFrom: purple
5
- colorTo: indigo
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
1
  ---
2
+ title: DockFire Reactify Web πŸš€
3
+ colorFrom: gray
4
+ colorTo: blue
5
+ emoji: 🐳
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite-v3
10
  ---
11
 
12
+ # Welcome to your new DeepSite project!
13
+ This project was created with [DeepSite](https://huggingface.co/deepsite).
components/AICommandCenter.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ import React from 'react';
2
+ import { useDispatch, useSelector } from 'react-redux';
3
+ import { MetricCard } from './MetricCard.js';
4
+ import { Send, MessageSquare, AlertCircle, Activity, Brain, Zap } from 'lucide-react';
5
+
6
+ export const AICommandCenter = () => {
7
+ // ... [component code remains the same]
8
+ };
components/MetricCard.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ import React from 'react';
2
+
3
+ export const MetricCard = ({ title, value, icon: Icon, color, description }) => {
4
+ // ... [component code remains the same]
5
+ };
components/app.js ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import React from 'react';
2
+ import { Provider } from 'react-redux';
3
+ import { configureStore } from '@reduxjs/toolkit';
4
+ import {
5
+ Camera, Mic, Send, Settings, Activity, TrendingUp, Code, Terminal, Server,
6
+ AlertCircle, MessageSquare, Brain, Zap, Sparkles, ChevronLeft, ChevronRight,
7
+ CheckCircle, Info, X, FileText
8
+ } from 'lucide-react';
9
+
10
+ // Import slices
11
+ import appReducer from './slices/appSlice.js';
12
+ import websocketReducer from './slices/websocketSlice.js';
13
+ import personalizationReducer from './slices/personalizationSlice.js';
14
+ import mcpReducer from './slices/mcpSlice.js';
15
+ import monitoringReducer from './slices/monitoringSlice.js';
16
+ import uiReducer from './slices/uiSlice.js';
17
+ import chatReducer from './slices/chatSlice.js';
18
+
19
+ // Import components
20
+ import { AIModelSelector } from './AIModelSelector.js';
21
+ import { AICommandCenter } from './AICommandCenter.js';
22
+ import { SystemMonitor } from './SystemMonitor.js';
23
+
24
+ // Configure store
25
+ const store = configureStore({
26
+ reducer: {
27
+ app: appReducer,
28
+ websocket: websocketReducer,
29
+ personalization: personalizationReducer,
30
+ mcpEcosystem: mcpReducer,
31
+ monitoring: monitoringReducer,
32
+ ui: uiReducer,
33
+ chat: chatReducer
34
+ },
35
+ middleware: (getDefaultMiddleware) =>
36
+ getDefaultMiddleware({
37
+ serializableCheck: false,
38
+ }),
39
+ });
40
+
41
+ const UnifiedDockFireComponent = () => {
42
+ // ... [rest of the component code remains the same]
43
+ };
44
+
45
+ export const UnifiedDockFireApp = () => (
46
+ <Provider store={store}>
47
+ <UnifiedDockFireComponent />
48
+ </Provider>
49
+ );
components/slices/appSlice.js ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { createSlice } from '@reduxjs/toolkit';
2
+
3
+ const initialState = {
4
+ theme: 'dark-professional',
5
+ layout: 'multi-pane',
6
+ notifications: [],
7
+ soundEnabled: true,
8
+ accessibility: { highContrast: false, reducedMotion: false }
9
+ };
10
+
11
+ export const appSlice = createSlice({
12
+ name: 'app',
13
+ initialState,
14
+ reducers: {
15
+ setTheme: (state, action) => {
16
+ state.theme = action.payload;
17
+ },
18
+ updateNotifications: (state, action) => {
19
+ state.notifications = [action.payload, ...state.notifications.slice(0, 4)];
20
+ },
21
+ },
22
+ });
23
+
24
+ export const { setTheme, updateNotifications } = appSlice.actions;
25
+ export default appSlice.reducer;
components/slices/websocketSlice.js ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { createSlice } from '@reduxjs/toolkit';
2
+
3
+ const initialState = {
4
+ connected: false,
5
+ latency: 23,
6
+ subscriptions: ['system-metrics', 'ai-status', 'notifications'],
7
+ lastUpdate: new Date().toISOString()
8
+ };
9
+
10
+ export const websocketSlice = createSlice({
11
+ name: 'websocket',
12
+ initialState,
13
+ reducers: {
14
+ websocketConnected: (state) => {
15
+ state.connected = true;
16
+ },
17
+ websocketDisconnected: (state) => {
18
+ state.connected = false;
19
+ },
20
+ updateLatency: (state, action) => {
21
+ state.latency = action.payload;
22
+ },
23
+ },
24
+ });
25
+
26
+ export const { websocketConnected, websocketDisconnected, updateLatency } = websocketSlice.actions;
27
+ export default websocketSlice.reducer;
index.html CHANGED
@@ -1,19 +1,16 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>DockFire - Unified AI Dashboard</title>
7
+ <link rel="stylesheet" href="style.css">
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <script src="https://cdn.tailwindcss.com"></script>
10
+ </head>
11
+ <body>
12
+ <div id="root"></div>
13
+ <script src="script.js" type="module"></script>
14
+ <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
15
+ </body>
16
+ </html>
 
 
 
script.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ import { UnifiedDockFireApp } from './components/app.js';
2
+ import { createRoot } from 'react-dom/client';
3
+
4
+ // Initialize the app
5
+ const container = document.getElementById('root');
6
+ const root = createRoot(container);
7
+ root.render(<UnifiedDockFireApp />);
style.css CHANGED
@@ -1,28 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
 
 
 
 
4
  }
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
 
 
9
  }
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
  }
17
 
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
  }
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
 
28
  }
 
 
 
 
 
 
 
 
 
 
1
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
2
+
3
+ :root {
4
+ --primary-500: #8b5cf6;
5
+ --primary-600: #7c3aed;
6
+ --secondary-500: #ec4899;
7
+ --dark-900: #0f172a;
8
+ --dark-800: #1e293b;
9
+ --dark-700: #334155;
10
+ --light-100: #f8fafc;
11
+ }
12
+
13
  body {
14
+ font-family: 'Inter', sans-serif;
15
+ background: var(--dark-900);
16
+ color: var(--light-100);
17
+ margin: 0;
18
+ padding: 0;
19
+ min-height: 100vh;
20
  }
21
 
22
+ .glass-effect {
23
+ background: rgba(255, 255, 255, 0.05);
24
+ backdrop-filter: blur(12px);
25
+ -webkit-backdrop-filter: blur(12px);
26
+ border: 1px solid rgba(255, 255, 255, 0.1);
27
  }
28
 
29
+ .gradient-text {
30
+ background: linear-gradient(90deg, var(--primary-500), var(--secondary-500));
31
+ -webkit-background-clip: text;
32
+ background-clip: text;
33
+ color: transparent;
34
  }
35
 
36
+ /* Animation classes */
37
+ .animate-pulse {
38
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
 
 
 
39
  }
40
 
41
+ @keyframes pulse {
42
+ 0%, 100% { opacity: 1; }
43
+ 50% { opacity: 0.5; }
44
  }
45
+
46
+ .animate-bounce {
47
+ animation: bounce 1s infinite;
48
+ }
49
+
50
+ @keyframes bounce {
51
+ 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8,0,1,1); }
52
+ 50% { transform: none; animation-timing-function: cubic-bezier(0,0,0.2,1); }
53
+ }