ankban commited on
Commit
513eda1
Β·
verified Β·
1 Parent(s): ae01722

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -11
app.py CHANGED
@@ -6,21 +6,26 @@ from file_dashboard import file_based_learning_router
6
  def main_app():
7
  with gr.Blocks(css="light_mode_chatter_owl.css") as app:
8
  current_mode = gr.State("spoken")
 
9
 
10
  with gr.Row():
11
- # === Sidebar ===
12
  with gr.Column(scale=1, min_width=220, elem_id="sidebar"):
13
  gr.Markdown("### πŸŽ“ Educare")
14
  gr.Markdown("---")
15
 
 
 
 
16
  btn_spoken = gr.Button("πŸ—£ Spoken Communication")
17
  btn_written = gr.Button("✍️ Written Communication")
18
-
19
  gr.Markdown("### πŸ“„ File-Based Learning")
20
- btn_file_study = gr.Button("β€ƒπŸ“˜ Study Guides") # indented using em-spaces
21
  btn_file_view = gr.Button("β€ƒπŸ“ Files")
22
 
23
- # === Main View Area ===
 
 
24
  with gr.Column(scale=4):
25
  with gr.Column(visible=True, elem_id="module-wrapper") as spoken_panel:
26
  spoken_dashboard()
@@ -30,17 +35,17 @@ def main_app():
30
 
31
  file_router, switch_view, study_panel, file_panel = file_based_learning_router()
32
 
33
- # === Mode Switch Handler ===
34
  def switch_mode(mode):
35
  return (
36
- gr.update(visible=(mode == "spoken")), # spoken_panel
37
- gr.update(visible=(mode == "written")), # written_panel
38
- gr.update(visible=(mode == "study")), # study_guide_panel
39
- gr.update(visible=(mode == "file")), # file_viewer_panel
40
  mode
41
  )
42
 
43
- # === Button Actions ===
44
  btn_spoken.click(fn=switch_mode, inputs=[gr.State("spoken")],
45
  outputs=[spoken_panel, written_panel, study_panel, file_panel, current_mode])
46
 
@@ -56,4 +61,4 @@ def main_app():
56
  return app
57
 
58
  if __name__ == "__main__":
59
- main_app().launch(server_name="0.0.0.0", server_port=7860)
 
6
  def main_app():
7
  with gr.Blocks(css="light_mode_chatter_owl.css") as app:
8
  current_mode = gr.State("spoken")
9
+ nickname = gr.State("")
10
 
11
  with gr.Row():
12
+ # === Sticky Sidebar ===
13
  with gr.Column(scale=1, min_width=220, elem_id="sidebar"):
14
  gr.Markdown("### πŸŽ“ Educare")
15
  gr.Markdown("---")
16
 
17
+ nickname_input = gr.Textbox(label="πŸ‘€ Your Nickname", placeholder="Enter your name")
18
+ nickname_input.change(lambda name: name, inputs=[nickname_input], outputs=[nickname])
19
+
20
  btn_spoken = gr.Button("πŸ—£ Spoken Communication")
21
  btn_written = gr.Button("✍️ Written Communication")
 
22
  gr.Markdown("### πŸ“„ File-Based Learning")
23
+ btn_file_study = gr.Button("β€ƒπŸ“˜ Study Guides")
24
  btn_file_view = gr.Button("β€ƒπŸ“ Files")
25
 
26
+ gr.Markdown("---")
27
+
28
+ # === Main View Panels ===
29
  with gr.Column(scale=4):
30
  with gr.Column(visible=True, elem_id="module-wrapper") as spoken_panel:
31
  spoken_dashboard()
 
35
 
36
  file_router, switch_view, study_panel, file_panel = file_based_learning_router()
37
 
38
+ # === Mode Visibility Switcher ===
39
  def switch_mode(mode):
40
  return (
41
+ gr.update(visible=(mode == "spoken")),
42
+ gr.update(visible=(mode == "written")),
43
+ gr.update(visible=(mode == "study")),
44
+ gr.update(visible=(mode == "file")),
45
  mode
46
  )
47
 
48
+ # === Navigation Hooks ===
49
  btn_spoken.click(fn=switch_mode, inputs=[gr.State("spoken")],
50
  outputs=[spoken_panel, written_panel, study_panel, file_panel, current_mode])
51
 
 
61
  return app
62
 
63
  if __name__ == "__main__":
64
+ main_app().launch(server_name="0.0.0.0", server_port=7860)