Applio-V3 / app.py
freshyfresco's picture
Update app.py
187e52b verified
from __future__ import annotations
from typing import Iterable
import gradio as gr
import sys
import os
from assets.i18n.i18n import I18nAuto
from tabs.inference.inference import inference_tab
from tabs.train.train import train_tab
from tabs.extra.extra import extra_tab
from tabs.report.report import report_tab
from tabs.download.download import download_tab
from tabs.tts.tts import tts_tab
from assets.discord_presence import rich_presence
from gradio.themes.base import Base
from gradio.themes.utils import colors, fonts, sizes
now_dir = os.getcwd()
sys.path.append(now_dir)
i18n = I18nAuto()
rich_presence()
class Applio(Base):
def __init__(
self,
primary_hue: colors.Color | str = colors.green,
secondary_hue: colors.Color | str = colors.emerald,
neutral_hue: colors.Color | str = colors.neutral,
spacing_size: sizes.Size | str = sizes.spacing_md,
radius_size: sizes.Size | str = sizes.radius_md,
text_size: sizes.Size | str = sizes.text_lg,
font: fonts.Font | str | Iterable[fonts.Font | str] = (
'Inter V',
fonts.GoogleFont('Inter'),
'ui-sans-serif',
'system-ui',
),
font_mono: fonts.Font | str | Iterable[fonts.Font | str] = (
'ui-monospace',
fonts.GoogleFont("Roboto Mono"),
'Consolas',
'monospace',
),
):
super().__init__(
primary_hue=primary_hue,
secondary_hue=secondary_hue,
neutral_hue=neutral_hue,
spacing_size=spacing_size,
radius_size=radius_size,
text_size=text_size,
font=font,
font_mono=font_mono,
)
# Additional settings
self.chatbot_code_background_color = chatbot_code_background_color
# Rest of your theme settings...
self.name = "Applio"
self.secondary_100 = "#dbeafe"
self.secondary_200 = "#bfdbfe"
self.secondary_300 = "#93c5fd"
self.secondary_400 = "#60a5fa"
self.secondary_50 = "#eff6ff"
self.secondary_500 = "#3b82f6"
self.secondary_600 = "#2563eb"
self.secondary_700 = "#1d4ed8"
self.secondary_800 = "#1e40af"
self.secondary_900 = "#1e3a8a"
self.secondary_950 = "#1d3660"
super().set(
# Blaise
background_fill_primary= "black",
background_fill_primary_dark="black",
background_fill_secondary= "black",
background_fill_secondary_dark="black",
block_background_fill= "*neutral_800",
block_background_fill_dark="*neutral_800",
block_border_color= "*border_color_primary",
block_border_color_dark= "*border_color_primary",
block_border_width= "1px",
block_border_width_dark= "1px",
block_info_text_color= "*body_text_color_subdued",
block_info_text_color_dark= "*body_text_color_subdued",
block_info_text_size= "*text_sm",
block_info_text_weight= "400",
block_label_background_fill= "*background_fill_primary",
block_label_background_fill_dark= "*background_fill_secondary",
block_label_border_color= "*border_color_primary",
block_label_border_color_dark= "*border_color_primary",
block_label_border_width= "1px",
block_label_border_width_dark= "1px",
block_label_margin= "0",
block_label_padding= "*spacing_sm *spacing_lg",
block_label_radius= "calc(*radius_lg - 1px) 0 calc(*radius_lg - 1px) 0",
block_label_right_radius= "0 calc(*radius_lg - 1px) 0 calc(*radius_lg - 1px)",
block_label_shadow= "*block_shadow",
block_label_text_color= "*neutral_200",
block_label_text_color_dark= "*neutral_200",
block_label_text_weight= "400",
block_padding= "*spacing_xl",
block_radius= "*radius_md",
block_shadow= "none",
block_shadow_dark= "none",
block_title_background_fill= "rgba(46,85,65,255)",
block_title_background_fill_dark= "rgba(46,85,65,255)",
block_title_border_color= "none",
block_title_border_color_dark= "none",
block_title_border_width= "0px",
block_title_padding= "*block_label_padding",
block_title_radius= "*block_label_radius",
block_title_text_color= "*neutral_200",
block_title_text_color_dark= "*neutral_200",
block_title_text_size= "*text_md",
block_title_text_weight= "600",
body_background_fill= "black",
body_background_fill_dark= "black",
body_text_color= "white",
body_text_color_dark= "white",
body_text_color_subdued= "*neutral_400",
body_text_color_subdued_dark= "*neutral_400",
body_text_size= "*text_md",
body_text_weight= "400",
border_color_accent= "*neutral_600",
border_color_accent_dark= "*neutral_600",
border_color_primary= "*neutral_800",
border_color_primary_dark= "*neutral_800",
button_border_width= "*input_border_width",
button_border_width_dark= "*input_border_width",
button_cancel_background_fill= "*button_secondary_background_fill",
button_cancel_background_fill_dark= "*button_secondary_background_fill",
button_cancel_background_fill_hover= "*button_cancel_background_fill",
button_cancel_background_fill_hover_dark= "*button_cancel_background_fill",
button_cancel_border_color= "*button_secondary_border_color",
button_cancel_border_color_dark= "*button_secondary_border_color",
button_cancel_border_color_hover= "*button_cancel_border_color",
button_cancel_border_color_hover_dark= "*button_cancel_border_color",
button_cancel_text_color= "*button_secondary_text_color",
button_cancel_text_color_dark= "*button_secondary_text_color",
button_cancel_text_color_hover= "*button_cancel_text_color",
button_cancel_text_color_hover_dark= "*button_cancel_text_color",
button_large_padding= "*spacing_lg calc(2 * *spacing_lg)",
button_large_radius= "*radius_lg",
button_large_text_size= "*text_lg",
button_large_text_weight= "600",
button_primary_background_fill= "*primary_600",
button_primary_background_fill_dark= "*primary_600",
button_primary_background_fill_hover= "*primary_500",
button_primary_background_fill_hover_dark= "*primary_500",
button_primary_border_color= "*primary_500",
button_primary_border_color_dark= "*primary_500",
button_primary_border_color_hover= "*primary_400",
button_primary_border_color_hover_dark= "*primary_400",
button_primary_text_color= "white",
button_primary_text_color_dark= "white",
button_primary_text_color_hover= "*button_primary_text_color",
button_primary_text_color_hover_dark= "*button_primary_text_color",
button_secondary_background_fill= "transparent",
button_secondary_background_fill_dark= "transparent",
button_secondary_background_fill_hover= "*neutral_800",
button_secondary_background_fill_hover_dark= "*neutral_800",
button_secondary_border_color= "*neutral_700",
button_secondary_border_color_dark= "*neutral_700",
button_secondary_border_color_hover= "*neutral_600",
button_secondary_border_color_hover_dark= "*neutral_600",
button_secondary_text_color= "white",
button_secondary_text_color_dark= "white",
button_secondary_text_color_hover= "*button_secondary_text_color",
button_secondary_text_color_hover_dark= "*button_secondary_text_color",
button_shadow= "none",
button_shadow_active= "*shadow_inset",
button_shadow_hover= "none",
button_small_padding= "*spacing_sm calc(2 * *spacing_sm)",
button_small_radius= "*radius_lg",
button_small_text_size= "*text_md",
button_small_text_weight= "400",
button_transition= "0.3s ease all",
chatbot_code_background_color= "*neutral_800",
chatbot_code_background_color_dark= "*neutral_800",
checkbox_background_color= "*neutral_700",
checkbox_background_color_dark= "*neutral_700",
checkbox_background_color_focus= "*checkbox_background_color",
checkbox_background_color_focus_dark= "*checkbox_background_color",
checkbox_background_color_hover= "*checkbox_background_color",
checkbox_background_color_hover_dark= "*checkbox_background_color",
checkbox_background_color_selected= "*secondary_600",
checkbox_background_color_selected_dark= "*secondary_600",
checkbox_border_color= "*neutral_700",
checkbox_border_color_dark= "*neutral_700",
checkbox_border_color_focus= "*secondary_500",
checkbox_border_color_focus_dark= "*secondary_500",
checkbox_border_color_hover= "*neutral_600",
checkbox_border_color_hover_dark= "*neutral_600",
checkbox_border_color_selected= "*secondary_600",
checkbox_border_color_selected_dark= "*secondary_600",
checkbox_border_radius= "*radius_sm",
checkbox_border_width= "*input_border_width",
checkbox_border_width_dark= "*input_border_width",
checkbox_check= "url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\")",
checkbox_label_background_fill= "transparent",
checkbox_label_background_fill_dark= "transparent",
checkbox_label_background_fill_hover= "transparent",
checkbox_label_background_fill_hover_dark= "transparent",
checkbox_label_background_fill_selected= "transparent",
checkbox_label_background_fill_selected_dark= "transparent",
checkbox_label_border_color= "transparent",
checkbox_label_border_color_dark= "transparent",
checkbox_label_border_color_hover= "transparent",
checkbox_label_border_color_hover_dark= "transparent",
checkbox_label_border_width= "transparent",
checkbox_label_border_width_dark= "transparent",
checkbox_label_gap= "*spacing_lg",
checkbox_label_padding= "*spacing_md calc(2 * *spacing_md)",
checkbox_label_shadow= "none",
checkbox_label_text_color= "*body_text_color",
checkbox_label_text_color_dark= "*body_text_color",
checkbox_label_text_color_selected= "*checkbox_label_text_color",
checkbox_label_text_color_selected_dark= "*checkbox_label_text_color",
checkbox_label_text_size= "*text_md",
checkbox_label_text_weight= "400",
checkbox_shadow= "*input_shadow",
color_accent= "*primary_500",
color_accent_soft= "*primary_50",
color_accent_soft_dark= "*neutral_700",
container_radius= "*radius_xl",
embed_radius= "*radius_lg",
error_background_fill= "*background_fill_primary",
error_background_fill_dark= "*background_fill_primary",
error_border_color= "*border_color_primary",
error_border_color_dark= "*border_color_primary",
error_border_width= "1px",
error_border_width_dark= "1px",
error_text_color= "#ef4444",
error_text_color_dark= "#ef4444",
form_gap_width= "0px",
input_background_fill= "*neutral_900",
input_background_fill_dark= "*neutral_900",
input_background_fill_focus= "*secondary_600",
input_background_fill_focus_dark= "*secondary_600",
input_background_fill_hover= "*input_background_fill",
input_background_fill_hover_dark= "*input_background_fill",
input_border_color= "*neutral_700",
input_border_color_dark= "*neutral_700",
input_border_color_focus= "*secondary_600",
input_border_color_focus_dark= "*primary_600",
input_border_color_hover= "*input_border_color",
input_border_color_hover_dark= "*input_border_color",
input_border_width= "1px",
input_border_width_dark= "1px",
input_padding= "*spacing_xl",
input_placeholder_color= "*neutral_500",
input_placeholder_color_dark= "*neutral_500",
input_radius= "*radius_lg",
input_shadow= "none",
input_shadow_dark= "none",
input_shadow_focus= "*input_shadow",
input_shadow_focus_dark= "*input_shadow",
input_text_size= "*text_md",
input_text_weight= "400",
layout_gap= "*spacing_xxl",
link_text_color= "*secondary_500",
link_text_color_active= "*secondary_500",
link_text_color_active_dark= "*secondary_500",
link_text_color_dark= "*secondary_500",
link_text_color_hover= "*secondary_400",
link_text_color_hover_dark= "*secondary_400",
link_text_color_visited= "*secondary_600",
link_text_color_visited_dark= "*secondary_600",
loader_color= "*color_accent",
loader_color_dark= "*color_accent",
panel_background_fill= "*background_fill_secondary",
panel_background_fill_dark= "*background_fill_secondary",
panel_border_color= "*border_color_primary",
panel_border_color_dark= "*border_color_primary",
panel_border_width= "1px",
panel_border_width_dark= "1px",
prose_header_text_weight= "600",
prose_text_size= "*text_md",
prose_text_weight= "400",
radio_circle= "url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\")",
section_header_text_size= "*text_md",
section_header_text_weight= "400",
shadow_drop= "rgba(0,0,0,0.05) 0px 1px 2px 0px",
shadow_drop_lg= "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)",
shadow_inset= "rgba(0,0,0,0.05) 0px 2px 4px 0px inset",
shadow_spread= "3px",
shadow_spread_dark= "1px",
slider_color= "*primary_600",
slider_color_dark= "*primary_600",
stat_background_fill= "*primary_500",
stat_background_fill_dark= "*primary_500",
table_border_color= "*neutral_700",
table_border_color_dark= "*neutral_700",
table_even_background_fill= "*neutral_950",
table_even_background_fill_dark= "*neutral_950",
table_odd_background_fill= "*neutral_900",
table_odd_background_fill_dark= "*neutral_900",
table_radius= "*radius_lg",
table_row_focus= "*color_accent_soft",
table_row_focus_dark= "*color_accent_soft",
)
with gr.Blocks(theme=Applio(), title="Applio") as ApplioApp:
gr.Markdown("# Applio")
gr.Markdown(
i18n(
"Ultimate voice cloning tool, meticulously optimized for unrivaled power, modularity, and user-friendly experience."
)
)
gr.Markdown(
i18n(
"[Support](https://discord.gg/IAHispano) β€” [Discord Bot](https://discord.com/oauth2/authorize?client_id=1144714449563955302&permissions=1376674695271&scope=bot%20applications.commands) β€” [Find Voices](https://applio.org/models) β€” [GitHub](https://github.com/IAHispano/Applio)"
)
)
with gr.Tab(i18n("Inference")):
inference_tab()
with gr.Tab(i18n("Train")):
train_tab()
with gr.Tab(i18n("TTS")):
tts_tab()
with gr.Tab(i18n("Extra")):
extra_tab()
with gr.Tab(i18n("Download")):
download_tab()
with gr.Tab(i18n("Report a Bug")):
report_tab()
if __name__ == "__main__":
ApplioApp.launch()