beginner-apps / app.py
ppvbooks's picture
Update app.py
43b3744 verified
Raw
History Blame Contribute Delete
2.17 kB
import gradio as gr
import chapter1_textgen
import chapter2_prompt_improver
import chapter3_summarizer
def main():
with gr.Blocks(title="PPV – HuggingFace Guide") as demo:
# -------------------------------
# HOMEPAGE BANNER
# -------------------------------
gr.Markdown(
"""
<div style="text-align:center; padding: 30px 0;
background: linear-gradient(90deg, #4b79a1, #283e51);
color: white; border-radius: 8px; margin-bottom: 25px;">
<h1 style="margin: 0; font-size: 42px; font-weight: 700;">
PPV – Beginner AI Apps Guide
</h1>
<p style="margin: 8px 0 0; font-size: 20px; opacity: 0.9;">
Learn. Build. Publish. The simplest path to AI app creation.
</p>
</div>
"""
)
# -------------------------------
# TABS FOR CHAPTERS
# -------------------------------
with gr.Tabs():
with gr.Tab("Chapter 1 – Text Generator"):
chapter1_textgen.app()
with gr.Tab("Chapter 2 – Prompt Improver"):
chapter2_prompt_improver.app()
with gr.Tab("Chapter 3 – Summarizer"):
chapter3_summarizer.app()
# -------------------------------
# PPV BRAND FOOTER
# -------------------------------
gr.Markdown(
"""
<hr style="margin-top: 40px; margin-bottom: 10px;">
<div style="text-align:center; padding: 15px 0; color: #555;">
<p style="margin: 0; font-size: 16px;">
Created by
<span style="font-family: Pacifico, cursive; font-size: 20px;">
PPV
</span>
</p>
<p style="margin: 5px 0 0; font-size: 14px; opacity: 0.7;">
Empowering beginners to build real AI apps with clarity and confidence.
</p>
</div>
"""
)
return demo
demo = main()
demo.launch()