Spaces:
Build error
Build error
| import gradio as gr | |
| import pandas as pd | |
| import datetime | |
| # Sample Exam Data | |
| exam_data = { | |
| "Exam Name": ["NEET", "JEE Main", "CAT", "UPSC CSE", "SSC CGL"], | |
| "Date": ["2024-05-07", "2024-06-18", "2024-11-28", "2024-06-02", "2024-07-15"], | |
| "Details": [ | |
| "National Eligibility cum Entrance Test (NEET) for medical aspirants.", | |
| "Joint Entrance Examination (JEE) for engineering aspirants.", | |
| "Common Admission Test (CAT) for MBA admissions.", | |
| "Union Public Service Commission (UPSC) Civil Services Examination.", | |
| "Staff Selection Commission (SSC) Combined Graduate Level Examination." | |
| ] | |
| } | |
| # Convert data into a DataFrame | |
| exam_df = pd.DataFrame(exam_data) | |
| exam_df['Date'] = pd.to_datetime(exam_df['Date']) | |
| # Home Page | |
| def home(): | |
| return """ | |
| <h1>Welcome to TH EDge</h1> | |
| <p>Your one-stop destination for all educational news, exams, and resources.</p> | |
| <h2>Sections</h2> | |
| <ul> | |
| <li> | |
| <a href="#">Exam Calendar</a> | |
| <ul> | |
| <li><a href="/exam_calendar">Upcoming Exams</a></li> | |
| <li><a href="#">Results</a></li> | |
| </ul> | |
| </li> | |
| <li> | |
| <a href="#">Study Resources</a> | |
| <ul> | |
| <li><a href="#">News You Can Use</a></li> | |
| <li><a href="#">Deep Dive</a></li> | |
| <li><a href="#">Podcasts</a></li> | |
| <li><a href="#">Webinars</a></li> | |
| </ul> | |
| </li> | |
| <li> | |
| <a href="#">Career Guidance</a> | |
| <ul> | |
| <li><a href="#">Career Paths</a></li> | |
| <li><a href="#">Interviews</a></li> | |
| <li><a href="#">Job Listings</a></li> | |
| </ul> | |
| </li> | |
| </ul> | |
| """ | |
| # Exam Calendar Page | |
| def exam_calendar(selected_date=None): | |
| if selected_date: | |
| selected_date = pd.to_datetime(selected_date) | |
| filtered_df = exam_df[exam_df['Date'] >= selected_date] | |
| else: | |
| filtered_df = exam_df | |
| exam_table = filtered_df.to_html(index=False) | |
| return f""" | |
| <h1>Exam Calendar</h1> | |
| <p>View upcoming exams and important dates.</p> | |
| <form method="post"> | |
| <label for="date">Select a date:</label> | |
| <input type="date" id="date" name="selected_date"> | |
| <input type="submit" value="Search"> | |
| </form> | |
| {exam_table} | |
| <br> | |
| <a href="/">Back to Home</a> | |
| """ | |
| # Gradio App Interface | |
| def app_interface(route="/"): | |
| if route == "/exam_calendar": | |
| return exam_calendar() | |
| else: | |
| return home() | |
| # Launching the Gradio interface | |
| iface = gr.Interface( | |
| fn=app_interface, | |
| inputs=gr.Textbox(lines=1, value="/", label="Route"), | |
| outputs="html" | |
| ) | |
| iface.launch() | |