Spaces:
Build error
Build error
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8" /> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |
| <title>Processed Results</title> | |
| <link | |
| href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" | |
| rel="stylesheet" | |
| /> | |
| <style> | |
| body { | |
| background-color: #1c1c1e; | |
| font-family: "Poppins", sans-serif; | |
| color: #f5f5f7; | |
| } | |
| h1 { | |
| color: #e5e5e7; | |
| text-align: center; | |
| /* margin-bottom: 20px; */ | |
| } | |
| .cont { | |
| background-color: #2c2c2e; | |
| padding: 30px; | |
| border-radius: 15px; | |
| box-shadow: 0 8px 16px rgba(0, 0, 0, 0.5); | |
| transition: 1s ease; | |
| } | |
| .section-title { | |
| color: #ff9f0a; | |
| font-size: 1.5rem; | |
| font-weight: bold; | |
| margin-top: 20px; | |
| border-bottom: 2px solid #ff9f0a; | |
| padding-bottom: 10px; | |
| } | |
| .card { | |
| background-color: #3a3a3c; | |
| color: #f5f5f7; | |
| border-radius: 10px; | |
| margin-bottom: 15px; | |
| padding: 15px; | |
| box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3); | |
| transition: background-color 0.3s ease; | |
| } | |
| .card:hover { | |
| background-color: #3a3a3c98; | |
| } | |
| .card-title { | |
| color: #ff9f0a; | |
| font-size: 1.2rem; | |
| font-weight: bold; | |
| } | |
| .card-text { | |
| color: #d1d1d6; | |
| font-size: 1rem; | |
| } | |
| ul { | |
| list-style-type: none; | |
| padding-left: 0; | |
| } | |
| li::before { | |
| content: "• "; | |
| color: #ff9f0a; | |
| } | |
| .btn-reset { | |
| background-color: #ff453a; | |
| color: white; | |
| border: none; | |
| padding: 10px 20px; | |
| border-radius: 5px; | |
| transition: background-color 0.3s ease; | |
| margin-bottom: 20px; | |
| } | |
| .btn-reset:hover { | |
| background-color: #e03a2f; | |
| } | |
| .alert { | |
| text-align: center; | |
| position: absolute; | |
| top: 0; | |
| right: 15%; | |
| /* right: 50%; | |
| transform: translateX(-50%); */ | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div class="container"> | |
| {% with messages = get_flashed_messages() %} {% if messages %} | |
| <div class="alert alert-success mt-4 " id="flash-message"> | |
| {{ messages[0] }} | |
| </div> | |
| {% endif %} {% endwith %} | |
| <!-- <div class="alert alert-success mt-4 " id="flash-message"> | |
| sfdsdaa asfcsd sdgsfr sdfgfd jhijunb hun hjujbuy hgbuuuu jjf | |
| </div> --> | |
| </div> | |
| <div class="container cont mt-5"> | |
| <div class="d-flex align-items-center justify-content-between"> | |
| <h1>Processed Data</h1> | |
| <!-- Reset Button --> | |
| <div class="text-center mt-4"> | |
| <a href="{{ url_for('reset_upload') }}" class="btn btn-reset" | |
| >Reset & Upload New File</a | |
| > | |
| </div> | |
| </div> | |
| {% if parsed_data %} | |
| <!-- Personal Information Section --> | |
| <section> | |
| <h3 class="section-title">Personal Information</h3> | |
| <div class="row"> | |
| <div class="col-md-12"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Name:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.personal.name or 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Contact:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.personal.contact or 'Not Found' }} | |
| {% if parsed_data.personal.invalid_contact %} | |
| - ({{ parsed_data.personal.invalid_contact }}) | |
| {% endif %} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Email:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.personal.email or 'Not Found' }} | |
| {% if parsed_data.personal.invalid_email %} | |
| ({{ parsed_data.personal.invalid_email }}) | |
| {% endif %} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Location:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.personal.location or 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-fle"> | |
| <h5 class="card-title">LinkedIn:</h5> | |
| <p class="card-text"> | |
| {% if parsed_data.personal.linkedin != 'Not found' %} | |
| <ul> | |
| {% for lnk in parsed_data.personal.linkedin %} | |
| <li> <a href="{{ lnk }}" target="_blank">{{ lnk }}</a></li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| Not Found | |
| {% endif %} | |
| </p> | |
| </div> | |
| <div class="d-fle"> | |
| <h5 class="card-title">GitHub:</h5> | |
| <p class="card-text"> | |
| {% if parsed_data.personal.github != 'Not found' %} | |
| <ul> | |
| {% for git in parsed_data.personal.github %} | |
| <li> <a href="{{ git }}" target="_blank">{{ git }}</a></li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| Not Found | |
| {% endif %} | |
| </p> | |
| </div> | |
| <h5 class="card-title">Other Links:</h5> | |
| {% if parsed_data.personal.other_links %} | |
| <ul> | |
| {% for link in parsed_data.personal.other_links %} | |
| <li><a href="{{ link }}" target="_blank">{{ link }}</a></li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| <p>Not Found</p> | |
| {% endif %} | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Professional Information Section --> | |
| <section> | |
| <h3 class="section-title">Professional Information</h3> | |
| <div class="row"> | |
| <!-- Technical Skills --> | |
| <div class="col-md-6 col-lg-4 mb-4"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <h5 class="card-title">Technical Skills:</h5> | |
| {% if parsed_data.professional.technical_skills %} | |
| <ul> | |
| {% for skill in parsed_data.professional.technical_skills %} | |
| <li>{{ skill }}</li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| <p>No technical skills found</p> | |
| {% endif %} | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Tools --> | |
| <div class="col-md-6 col-lg-4 mb-4"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <h5 class="card-title">Tools:</h5> | |
| {% if parsed_data.professional.tools %} | |
| <ul> | |
| {% for tool in parsed_data.professional.tools %} | |
| <li>{{ tool }}</li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| <p>No tools found</p> | |
| {% endif %} | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Soft Skills --> | |
| <div class="col-md-6 col-lg-4 mb-4"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <h5 class="card-title">Soft Skills:</h5> | |
| {% if parsed_data.professional.non_technical_skills %} | |
| <ul> | |
| {% for skill in parsed_data.professional.non_technical_skills | |
| %} | |
| <li>{{ skill }}</li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| <p>No soft skills found</p> | |
| {% endif %} | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Experience Section --> | |
| <section> | |
| <h3 class="card-title p-3">Experience:</h3> | |
| <div class="row"> | |
| <div class="col-md-12"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Company:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.experience[0].company or | |
| 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Projects:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.experience[0].projects or | |
| 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Role:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.experience[0].role or 'Not | |
| Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Years of Experience:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.experience[0].years or | |
| 'Not Found' }} | |
| </p> | |
| </div> | |
| <h5 class="card-title">Project Experience:</h5> | |
| {% if parsed_data.professional.experience[0].project_experience | |
| %} | |
| <ul> | |
| {% for project in | |
| parsed_data.professional.experience[0].project_experience %} | |
| <li>{{ project }}</li> | |
| {% endfor %} | |
| </ul> | |
| {% else %} | |
| <p>Not Found</p> | |
| {% endif %} | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Education Section --> | |
| <section> | |
| <h3 class="card-title p-3">Education:</h3> | |
| <div class="row"> | |
| <div class="col-md-12"> | |
| <div class="card"> | |
| <div class="card-body"> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Qualification:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.education[0].qualification | |
| }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">University:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.education[0].university or | |
| 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Course:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.education[0].course or | |
| 'Not Found' }} | |
| </p> | |
| </div> | |
| <div class="d-flex"> | |
| <h5 class="card-title">Certificate:</h5> | |
| <p class="card-text"> | |
| {{ parsed_data.professional.education[0].certificate | |
| or 'Not Found' }} | |
| </p> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| {% else %} | |
| <p>No data available. Please process a file.</p> | |
| {% endif %} | |
| </div> | |
| <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script> | |
| <script> | |
| setTimeout(function () { | |
| let flashMessage = document.getElementById("flash-message"); | |
| if (flashMessage) { | |
| flashMessage.style.transition = "opacity 1s ease"; | |
| flashMessage.style.opacity = 0; | |
| setTimeout(() => flashMessage.remove(), 1000); | |
| } | |
| }, 3000); | |
| </script> | |
| </body> | |
| </html> | |