IDKHowToCodeFr commited on
Commit
27d59e5
·
verified ·
1 Parent(s): 701d743

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. frontend/pages/6_About.py +53 -50
frontend/pages/6_About.py CHANGED
@@ -9,7 +9,7 @@ st.markdown("""
9
 
10
  html, body, [class*="css"] {
11
  font-family: 'Inter', sans-serif;
12
- color: #e0e0e0;
13
  }
14
 
15
  .main {
@@ -18,73 +18,76 @@ html, body, [class*="css"] {
18
 
19
  h1 {
20
  font-weight: 800 !important;
21
- letter-spacing: -1px !important;
22
- color: #ffffff !important;
23
- font-size: 3rem !important;
24
- margin-bottom: 0.5rem !important;
25
  }
26
 
27
  h3 {
28
  font-weight: 700 !important;
29
- color: #00f2fe !important;
30
- margin-top: 2rem !important;
31
- font-size: 1.8rem !important;
 
32
  }
33
 
34
  p, li, div {
35
- font-size: 1.1rem !important;
36
- line-height: 1.6 !important;
 
37
  }
38
 
39
  .tech-badge {
40
  display: inline-block;
41
- padding: 6px 16px;
42
- margin: 0 8px 10px 0;
43
  border-radius: 50px;
44
- font-size: 0.9rem;
45
  font-weight: 600;
46
- background: rgba(255,255,255,0.05);
47
- border: 1px solid rgba(255,255,255,0.1);
48
- color: #00f2fe;
49
- transition: all 0.3s ease;
50
  }
51
 
52
  .tech-badge:hover {
53
- background: rgba(0, 242, 254, 0.2);
54
- border-color: #00f2fe;
55
- transform: translateY(-2px);
56
- box-shadow: 0 4px 15px rgba(0, 242, 254, 0.2);
57
  }
58
 
59
  .live-link {
60
  text-decoration: none;
61
  font-weight: 600;
62
- color: #4facfe;
63
- border-bottom: 1px dashed #4facfe;
64
  transition: all 0.2s ease;
65
  }
66
 
67
  .live-link:hover {
68
- color: #00f2fe;
69
- border-bottom-style: solid;
70
  }
71
 
72
- /* Glass cards for the info/success/etc boxes */
73
  div[data-testid="stExpander"], .stAlert {
74
- background: rgba(255, 255, 255, 0.05) !important;
75
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
76
- border-radius: 15px !important;
77
- backdrop-filter: blur(12px);
 
78
  }
79
 
80
- /* Ensure text inside alerts/info boxes is high-contrast white */
81
- .stAlert p, .stAlert div {
82
- color: #ffffff !important;
83
- font-weight: 500 !important;
84
  }
85
 
86
  .stMarkdown {
87
- margin-bottom: 1rem;
88
  }
89
 
90
  </style>
@@ -118,29 +121,29 @@ graph = graphviz.Digraph(node_attr={'shape': 'box', 'style': 'rounded,filled', '
118
  graph_attr={'rankdir': 'TB', 'splines': 'ortho', 'nodesep': '1.0', 'bgcolor': 'transparent', 'fontcolor': 'white'})
119
 
120
  # Define UI & API nodes at the top
121
- graph.node('UI', 'Streamlit Frontend\nInteractive Dashboard (IST)', fillcolor='#FFB6C1', fontcolor='#1a1a1a', color='#FF69B4', penwidth='2')
122
- graph.node('API', 'FastAPI Backend\nInternal Routing (UTC)', fillcolor='#ADD8E6', fontcolor='#1a1a1a', color='#4682B4', penwidth='2')
123
- graph.node('HUB', 'HF Hub Dataset\nCentralized History Store', shape='folder', fillcolor='#FFFACD', fontcolor='#1a1a1a', color='#F0E68C', penwidth='2')
124
- graph.node('DB', 'SQLite DB\nLocal Instance Cache', shape='cylinder', fillcolor='#E6E6FA', fontcolor='#1a1a1a', color='#9370DB', penwidth='2')
125
 
126
  # Core connections
127
- graph.edge('UI', 'API', label=' internal localhost:8000', color='#aaaaaa', fontcolor='#aaaaaa')
128
- graph.edge('API', 'DB', label=' Read/Write', color='#aaaaaa', fontcolor='#aaaaaa')
129
- graph.edge('API', 'HUB', label=' HfApi Sync (Persistent)', color='#aaaaaa', fontcolor='#aaaaaa')
130
 
131
  # Machine Learning Subgraph
132
  with graph.subgraph(name='cluster_ml') as ml:
133
- ml.attr(label='Machine Learning & Inference Pipeline', style='dashed', color='#777777', fontcolor='#cccccc')
134
- ml.node('ENS', 'Ensemble Engine\nSoft-Voting Aggregator', shape='diamond', fillcolor='#F0FFF0', fontcolor='#1a1a1a', color='#90EE90', penwidth='2')
135
- ml.node('MODELS', 'Classifiers\n(RF, SVM, LogReg, NN, KNN)', fillcolor='#F0FFF0', fontcolor='#1a1a1a', color='#90EE90', penwidth='2')
136
- ml.node('SHAP', 'SHAP Explainer\nFeature Impact Analysis', fillcolor='#F0FFF0', fontcolor='#1a1a1a', color='#90EE90', penwidth='2')
137
 
138
  # Hardware Export Subgraph
139
  with graph.subgraph(name='cluster_edge') as edge:
140
- edge.attr(label='Hardware & Edge AI Export', style='dashed', color='#777777', fontcolor='#cccccc')
141
- edge.node('TRANS', 'C-Code Transpiler\nINT8 Quantization', fillcolor='#FFE4E1', fontcolor='#1a1a1a', color='#E9967A', penwidth='2')
142
- edge.node('HEADER', 'tinyml_model.h\nOptimized Header File', shape='note', fillcolor='#FFE4E1', fontcolor='#1a1a1a', color='#E9967A', penwidth='2')
143
- edge.node('MCU', 'ESP32 / ARM Cortex-M\nMicrocontroller Node', fillcolor='#FFE4E1', fontcolor='#1a1a1a', color='#E9967A', penwidth='2')
144
 
145
  # Map Cross-cluster edges
146
  graph.edge('API', 'ENS', label=' Predict', color='#cccccc', fontcolor='#cccccc')
 
9
 
10
  html, body, [class*="css"] {
11
  font-family: 'Inter', sans-serif;
12
+ color: #FAFAFA;
13
  }
14
 
15
  .main {
 
18
 
19
  h1 {
20
  font-weight: 800 !important;
21
+ letter-spacing: -1.5px !important;
22
+ color: #FFFFFF !important;
23
+ font-size: 3.2rem !important;
24
+ margin-bottom: 0.8rem !important;
25
  }
26
 
27
  h3 {
28
  font-weight: 700 !important;
29
+ color: #AED9E0 !important; /* Sky Blue Pastel */
30
+ margin-top: 2.5rem !important;
31
+ font-size: 2rem !important;
32
+ letter-spacing: -0.5px !important;
33
  }
34
 
35
  p, li, div {
36
+ font-size: 1.15rem !important;
37
+ line-height: 1.7 !important;
38
+ color: #E0E0E0 !important;
39
  }
40
 
41
  .tech-badge {
42
  display: inline-block;
43
+ padding: 8px 18px;
44
+ margin: 0 10px 12px 0;
45
  border-radius: 50px;
46
+ font-size: 0.95rem;
47
  font-weight: 600;
48
+ background: rgba(174, 217, 224, 0.1); /* Sky Blue Tint */
49
+ border: 1px solid rgba(174, 217, 224, 0.3);
50
+ color: #AED9E0;
51
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
52
  }
53
 
54
  .tech-badge:hover {
55
+ background: rgba(174, 217, 224, 0.2);
56
+ border-color: #AED9E0;
57
+ transform: translateY(-3px);
58
+ box-shadow: 0 6px 20px rgba(174, 217, 224, 0.15);
59
  }
60
 
61
  .live-link {
62
  text-decoration: none;
63
  font-weight: 600;
64
+ color: #AED9E0;
65
+ border-bottom: 1px dashed rgba(174, 217, 224, 0.5);
66
  transition: all 0.2s ease;
67
  }
68
 
69
  .live-link:hover {
70
+ color: #FFFFFF;
71
+ border-bottom: 1px solid #FFFFFF;
72
  }
73
 
74
+ /* Enhanced Glass cards */
75
  div[data-testid="stExpander"], .stAlert {
76
+ background: rgba(255, 255, 255, 0.04) !important;
77
+ border: 1px solid rgba(255, 255, 255, 0.08) !important;
78
+ border-radius: 20px !important;
79
+ backdrop-filter: blur(16px) saturate(180%);
80
+ padding: 1.5rem !important;
81
  }
82
 
83
+ /* Clinical Contrast for Info Blocks */
84
+ .stAlert p, .stAlert div, .stAlert b, .stAlert strong {
85
+ color: #FFFFFF !important;
86
+ font-size: 1.15rem !important;
87
  }
88
 
89
  .stMarkdown {
90
+ margin-bottom: 1.2rem;
91
  }
92
 
93
  </style>
 
121
  graph_attr={'rankdir': 'TB', 'splines': 'ortho', 'nodesep': '1.0', 'bgcolor': 'transparent', 'fontcolor': 'white'})
122
 
123
  # Define UI & API nodes at the top
124
+ graph.node('UI', 'Streamlit Frontend\nInteractive Dashboard (IST)', fillcolor='#AED9E0', fontcolor='#0e1117', color='#AED9E0', penwidth='2')
125
+ graph.node('API', 'FastAPI Backend\nInternal Routing (UTC)', fillcolor='#A8E6CF', fontcolor='#0e1117', color='#A8E6CF', penwidth='2')
126
+ graph.node('HUB', 'HF Hub Dataset\nCentralized History Store', shape='folder', fillcolor='#FFF9C4', fontcolor='#0e1117', color='#FFF9C4', penwidth='2')
127
+ graph.node('DB', 'SQLite DB\nLocal Instance Cache', shape='cylinder', fillcolor='#DCCBEC', fontcolor='#0e1117', color='#DCCBEC', penwidth='2')
128
 
129
  # Core connections
130
+ graph.edge('UI', 'API', label=' internal localhost:8000', color='#555555', fontcolor='#aaaaaa')
131
+ graph.edge('API', 'DB', label=' Read/Write', color='#555555', fontcolor='#aaaaaa')
132
+ graph.edge('API', 'HUB', label=' HfApi Sync (Persistent)', color='#555555', fontcolor='#aaaaaa')
133
 
134
  # Machine Learning Subgraph
135
  with graph.subgraph(name='cluster_ml') as ml:
136
+ ml.attr(label='Machine Learning & Inference Pipeline', style='dashed', color='#333333', fontcolor='#888888')
137
+ ml.node('ENS', 'Ensemble Engine\nSoft-Voting Aggregator', shape='diamond', fillcolor='#FFDAB9', fontcolor='#0e1117', color='#FFDAB9', penwidth='2')
138
+ ml.node('MODELS', 'Classifiers\n(RF, SVM, LogReg, NN, KNN)', fillcolor='#FFDAB9', fontcolor='#0e1117', color='#FFDAB9', penwidth='2')
139
+ ml.node('SHAP', 'SHAP Explainer\nFeature Impact Analysis', fillcolor='#FFDAB9', fontcolor='#0e1117', color='#FFDAB9', penwidth='2')
140
 
141
  # Hardware Export Subgraph
142
  with graph.subgraph(name='cluster_edge') as edge:
143
+ edge.attr(label='Hardware & Edge AI Export', style='dashed', color='#333333', fontcolor='#888888')
144
+ edge.node('TRANS', 'C-Code Transpiler\nINT8 Quantization', fillcolor='#FFD1DC', fontcolor='#0e1117', color='#FFD1DC', penwidth='2')
145
+ edge.node('HEADER', 'tinyml_model.h\nOptimized Header File', shape='note', fillcolor='#FFD1DC', fontcolor='#0e1117', color='#FFD1DC', penwidth='2')
146
+ edge.node('MCU', 'ESP32 / ARM Cortex-M\nMicrocontroller Node', fillcolor='#FFD1DC', fontcolor='#0e1117', color='#FFD1DC', penwidth='2')
147
 
148
  # Map Cross-cluster edges
149
  graph.edge('API', 'ENS', label=' Predict', color='#cccccc', fontcolor='#cccccc')