codeboosterstech commited on
Commit
8d01d6d
·
verified ·
1 Parent(s): 25b05af

Update components/sidebar.py

Browse files
Files changed (1) hide show
  1. components/sidebar.py +30 -36
components/sidebar.py CHANGED
@@ -1,79 +1,73 @@
1
  """
2
- Sidebar component with step-by-step guide
3
  """
4
 
5
  import gradio as gr
6
 
7
 
8
  def create_sidebar(current_step):
9
- """Create the sidebar with progress steps"""
10
 
11
  with gr.Column(elem_classes="sidebar"):
12
- gr.Markdown("### Workflow Steps")
13
 
14
- # Step indicators
15
  steps = [
16
- {"number": 1, "title": "Provide Code", "description": "Upload or paste your Python code"},
17
- {"number": 2, "title": "Generate Files", "description": "Download individual components"},
18
  {"number": 3, "title": "Deploy", "description": "Deploy to Hugging Face"}
19
  ]
20
 
21
  step_html = '<div class="steps-container">'
22
  for step in steps:
23
- active_class = "active" if step["number"] == current_step.value else ""
24
  step_html += f'''
25
- <div class="step {active_class}">
26
- <div class="step-number">{step["number"]}</div>
27
- <div class="step-content">
28
- <div class="step-title">{step["title"]}</div>
29
- <div class="step-description">{step["description"]}</div>
30
- </div>
31
  </div>
32
  '''
33
  step_html += '</div>'
34
 
35
  gr.HTML(step_html)
36
 
37
- # Quick tips
38
- gr.Markdown("### Quick Tips")
39
 
40
  tips_html = '''
41
  <div class="tips-container">
42
  <div class="tip">
43
- <span class="material-icons tip-icon">code</span>
44
- <div class="tip-content">
45
- <strong>Clean Code</strong>
46
- <p>Ensure your Python code is well-structured for better conversion results.</p>
47
- </div>
48
  </div>
49
  <div class="tip">
50
- <span class="material-icons tip-icon">security</span>
51
- <div class="tip-content">
52
- <strong>API Security</strong>
53
- <p>Your API keys are used only for conversion and are not stored.</p>
54
- </div>
55
  </div>
56
  <div class="tip">
57
- <span class="material-icons tip-icon">cloud_upload</span>
58
- <div class="tip-content">
59
- <strong>Easy Deployment</strong>
60
- <p>Deploy with one click to Hugging Face Spaces.</p>
61
- </div>
62
  </div>
63
  </div>
64
  '''
65
 
66
  gr.HTML(tips_html)
67
 
68
- # System requirements
69
- gr.Markdown("### System Requirements")
70
  requirements_html = '''
71
  <div class="requirements">
72
  <ul>
73
- <li>Python 3.8 or higher</li>
74
- <li>Valid Groq API Key</li>
75
- <li>Hugging Face Account (for deployment)</li>
76
- <li>Internet connection</li>
77
  </ul>
78
  </div>
79
  '''
 
1
  """
2
+ Simplified sidebar component
3
  """
4
 
5
  import gradio as gr
6
 
7
 
8
  def create_sidebar(current_step):
9
+ """Create a clean sidebar with progress steps"""
10
 
11
  with gr.Column(elem_classes="sidebar"):
12
+ gr.Markdown("### Workflow", elem_classes="font-semibold")
13
 
14
+ # Simple step indicators
15
  steps = [
16
+ {"number": 1, "title": "Input Code", "description": "Provide your Python code"},
17
+ {"number": 2, "title": "Generate", "description": "Create Gradio app files"},
18
  {"number": 3, "title": "Deploy", "description": "Deploy to Hugging Face"}
19
  ]
20
 
21
  step_html = '<div class="steps-container">'
22
  for step in steps:
23
+ active = "active" if step["number"] == current_step.value else ""
24
  step_html += f'''
25
+ <div class="step {active}">
26
+ <span class="step-number">{step["number"]}</span>
27
+ <span class="step-title">{step["title"]}</span>
28
+ <div class="step-description">{step["description"]}</div>
 
 
29
  </div>
30
  '''
31
  step_html += '</div>'
32
 
33
  gr.HTML(step_html)
34
 
35
+ # Simple tips
36
+ gr.Markdown("### Tips", elem_classes="mt-4 font-semibold")
37
 
38
  tips_html = '''
39
  <div class="tips-container">
40
  <div class="tip">
41
+ <svg class="tip-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
42
+ <path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"/>
43
+ </svg>
44
+ <p>Ensure your code is well-structured for best results.</p>
 
45
  </div>
46
  <div class="tip">
47
+ <svg class="tip-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
48
+ <path d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"/>
49
+ </svg>
50
+ <p>API keys are used securely and not stored.</p>
 
51
  </div>
52
  <div class="tip">
53
+ <svg class="tip-icon" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
54
+ <path d="M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M9 19l3 3m0 0l3-3m-3 3V10"/>
55
+ </svg>
56
+ <p>One-click deployment to Hugging Face Spaces.</p>
 
57
  </div>
58
  </div>
59
  '''
60
 
61
  gr.HTML(tips_html)
62
 
63
+ # Simple requirements
64
+ gr.Markdown("### Requirements", elem_classes="mt-4 font-semibold")
65
  requirements_html = '''
66
  <div class="requirements">
67
  <ul>
68
+ <li>Python 3.8+</li>
69
+ <li>Groq API Key</li>
70
+ <li>Hugging Face Account</li>
 
71
  </ul>
72
  </div>
73
  '''