Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -762,35 +762,10 @@ with gr.Blocks(title="LinkedIn Translator") as demo:
|
|
| 762 |
lb_out = gr.HTML(value=_render_leaderboard())
|
| 763 |
hidden_sync_btn = gr.Button("sync", elem_id="hidden_sync_btn")
|
| 764 |
|
| 765 |
-
# ββ Extras:
|
| 766 |
with gr.Row():
|
| 767 |
-
|
| 768 |
-
|
| 769 |
-
gr.HTML("""
|
| 770 |
-
<div style="display:flex;align-items:center;gap:8px;margin-bottom:14px;">
|
| 771 |
-
<span style="font-size:1.1rem;">π΅</span>
|
| 772 |
-
<span style="font-weight:700;font-size:.85rem;color:#004182;
|
| 773 |
-
text-transform:uppercase;letter-spacing:.5px;">
|
| 774 |
-
LinkedIn Translator Soundtrack
|
| 775 |
-
</span>
|
| 776 |
-
</div>
|
| 777 |
-
|
| 778 |
-
<div style="max-width:320px; margin:0 auto;">
|
| 779 |
-
<div style="width:100%; aspect-ratio:9/16; border-radius:8px; overflow:hidden; background:#000;">
|
| 780 |
-
<iframe
|
| 781 |
-
src="https://www.youtube.com/embed/w2Cv_AL5ZQc"
|
| 782 |
-
style="width:100%; height:100%; border:none;"
|
| 783 |
-
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
| 784 |
-
allowfullscreen>
|
| 785 |
-
</iframe>
|
| 786 |
-
</div>
|
| 787 |
-
<p style="margin-top:0; margin-bottom:12px;">
|
| 788 |
-
<em> Song aus Projektkontext mit Gemini 3.1 generiert. </em>
|
| 789 |
-
</p>
|
| 790 |
-
</div>
|
| 791 |
-
""")
|
| 792 |
-
|
| 793 |
-
# Rechte Spalte: Behind the Scenes (Breiter)
|
| 794 |
with gr.Column(scale=2, elem_classes=["tuning-card"]):
|
| 795 |
gr.HTML("""
|
| 796 |
<div style="display:flex;align-items:center;gap:8px;margin-bottom:14px;">
|
|
@@ -803,7 +778,7 @@ with gr.Blocks(title="LinkedIn Translator") as demo:
|
|
| 803 |
|
| 804 |
<div style="font-size:.88rem; color:#444; line-height:1.6; margin-top:0; margin-bottom:16px;">
|
| 805 |
<p style="margin-top:0; margin-bottom:12px;">
|
| 806 |
-
Dieses Projekt ist kein handgeschriebener Enterprise-Code, sondern ein <strong>Proof of Concept (PoC)</strong>, das zu 100% mit AI-Tooling auf fast komplett freien Ressourcen umgesetzt wurde. Es zeigt, was mit modernem
|
| 807 |
</p>
|
| 808 |
<ul style="padding-left:20px; margin-bottom:16px;">
|
| 809 |
<li><strong>Code Build Backend & UI:</strong> Generiert mit Claude Sonnet 4.6.</li>
|
|
@@ -824,6 +799,40 @@ with gr.Blocks(title="LinkedIn Translator") as demo:
|
|
| 824 |
|
| 825 |
gr.Image("architektur.png", show_label=False, interactive=False, container=False)
|
| 826 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 827 |
if not HF_TOKEN:
|
| 828 |
gr.HTML("""<div style="background:#FFF4CE;border:1px solid #F9C642;border-left:4px solid #F9C642;
|
| 829 |
border-radius:6px;padding:10px 14px;font-size:.85rem;color:#7A5800;margin-top:8px;">
|
|
|
|
| 762 |
lb_out = gr.HTML(value=_render_leaderboard())
|
| 763 |
hidden_sync_btn = gr.Button("sync", elem_id="hidden_sync_btn")
|
| 764 |
|
| 765 |
+
# ββ Extras: Meta-Info & Soundtrack ββββββββββββββββββββββββββββββββββββββββ
|
| 766 |
with gr.Row():
|
| 767 |
+
|
| 768 |
+
# Linke Spalte: Behind the Scenes (Breiter, da scale=2)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 769 |
with gr.Column(scale=2, elem_classes=["tuning-card"]):
|
| 770 |
gr.HTML("""
|
| 771 |
<div style="display:flex;align-items:center;gap:8px;margin-bottom:14px;">
|
|
|
|
| 778 |
|
| 779 |
<div style="font-size:.88rem; color:#444; line-height:1.6; margin-top:0; margin-bottom:16px;">
|
| 780 |
<p style="margin-top:0; margin-bottom:12px;">
|
| 781 |
+
Dieses Projekt ist kein handgeschriebener Enterprise-Code, sondern ein <strong>Proof of Concept (PoC)</strong>, das zu 100% mit AI-Tooling auf fast komplett freien Ressourcen in kurzer Zeit umgesetzt wurde. Es zeigt, was mit modernem AI Tooling mΓΆglich ist:
|
| 782 |
</p>
|
| 783 |
<ul style="padding-left:20px; margin-bottom:16px;">
|
| 784 |
<li><strong>Code Build Backend & UI:</strong> Generiert mit Claude Sonnet 4.6.</li>
|
|
|
|
| 799 |
|
| 800 |
gr.Image("architektur.png", show_label=False, interactive=False, container=False)
|
| 801 |
|
| 802 |
+
# Rechte Spalte: Soundtrack (Schmaler, da scale=1)
|
| 803 |
+
with gr.Column(scale=1, elem_classes=["tuning-card"]):
|
| 804 |
+
gr.HTML("""
|
| 805 |
+
<div style="display:flex;align-items:center;gap:8px;margin-bottom:14px;">
|
| 806 |
+
<span style="font-size:1.1rem;">π΅</span>
|
| 807 |
+
<span style="font-weight:700;font-size:.85rem;color:#004182;
|
| 808 |
+
text-transform:uppercase;letter-spacing:.5px;">
|
| 809 |
+
LinkedIn Translator Soundtrack
|
| 810 |
+
</span>
|
| 811 |
+
</div>
|
| 812 |
+
|
| 813 |
+
<div style="max-width:320px; margin:0 auto;">
|
| 814 |
+
<div style="width:100%; aspect-ratio:9/16; border-radius:8px; overflow:hidden; background:#000;">
|
| 815 |
+
<iframe
|
| 816 |
+
src="https://www.youtube.com/embed/w2Cv_AL5ZQc"
|
| 817 |
+
style="width:100%; height:100%; border:none;"
|
| 818 |
+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
| 819 |
+
allowfullscreen>
|
| 820 |
+
</iframe>
|
| 821 |
+
</div>
|
| 822 |
+
|
| 823 |
+
<div style="font-size:.85rem; color:#444; line-height:1.5; margin-top:16px; background:#F3F2EF; padding:12px; border-radius:8px; border:1px solid #E0DFDC;">
|
| 824 |
+
<p style="margin-top:0; margin-bottom:8px;"><strong>Γber den Track:</strong><br>
|
| 825 |
+
Der durch den Projektkontext von Gemini generierte Song liefert den perfekten Soundtrack zum Translator. Er beschreibt den Verlust von AuthentizitΓ€t zugunsten steriler Business-Sprache.</p>
|
| 826 |
+
|
| 827 |
+
<p style="font-style:italic; color:#555; margin-bottom:8px; padding-left:10px; border-left:3px solid #0A66C2;">
|
| 828 |
+
"Corporate buzzwords in a sterile row, watching the human nuance start to go. [...] Syntax error in the empathy code."
|
| 829 |
+
</p>
|
| 830 |
+
|
| 831 |
+
<p style="margin-bottom:0;">Genau das parodiert dieses Tool: Die Transformation von echtem Klartext in eine standardisierte Formelhaftigkeit, die am Ende im <em>"Semantic void"</em> (der inhaltlichen Leere) mΓΌndet. Ein musikalischer Abgesang auf die authentische Kommunikation im LinkedIn-Alltag.</p>
|
| 832 |
+
</div>
|
| 833 |
+
</div>
|
| 834 |
+
""")
|
| 835 |
+
|
| 836 |
if not HF_TOKEN:
|
| 837 |
gr.HTML("""<div style="background:#FFF4CE;border:1px solid #F9C642;border-left:4px solid #F9C642;
|
| 838 |
border-radius:6px;padding:10px 14px;font-size:.85rem;color:#7A5800;margin-top:8px;">
|