Aitron Emper
commited on
Commit
•
2693299
1
Parent(s):
9dea1d3
Upload 57 files
Browse files- app.py +53 -6
- assets/i18n/languages/pl_PL.json +129 -111
- assets/themes/Applio.py +284 -0
- assets/themes/loadThemes.py +104 -0
- assets/themes/theme.json +1 -0
- assets/themes/theme_list.json +751 -0
- tabs/extra/extra.py +2 -2
- tabs/settings/themes.py +30 -0
app.py
CHANGED
@@ -5,6 +5,38 @@ import os
|
|
5 |
now_dir = os.getcwd()
|
6 |
sys.path.append(now_dir)
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
from tabs.inference.inference import inference_tab
|
9 |
from tabs.train.train import train_tab
|
10 |
from tabs.extra.extra import extra_tab
|
@@ -12,6 +44,9 @@ from tabs.report.report import report_tab
|
|
12 |
from tabs.download.download import download_tab
|
13 |
from tabs.tts.tts import tts_tab
|
14 |
from tabs.settings.presence import presence_tab
|
|
|
|
|
|
|
15 |
|
16 |
from assets.i18n.i18n import I18nAuto
|
17 |
|
@@ -21,7 +56,13 @@ from assets.discord_presence import RPCManager
|
|
21 |
|
22 |
RPCManager.start_presence()
|
23 |
|
24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
gr.Markdown("# Applio")
|
26 |
gr.Markdown(
|
27 |
i18n(
|
@@ -36,8 +77,8 @@ with gr.Blocks(theme="ParityError/Interstellar", title="Applio") as Applio:
|
|
36 |
with gr.Tab(i18n("Inference")):
|
37 |
inference_tab()
|
38 |
|
39 |
-
|
40 |
-
|
41 |
|
42 |
with gr.Tab(i18n("TTS")):
|
43 |
tts_tab()
|
@@ -51,9 +92,15 @@ with gr.Blocks(theme="ParityError/Interstellar", title="Applio") as Applio:
|
|
51 |
with gr.Tab(i18n("Report a Bug")):
|
52 |
report_tab()
|
53 |
|
54 |
-
|
55 |
-
|
|
|
56 |
|
57 |
|
58 |
if __name__ == "__main__":
|
59 |
-
Applio.launch(
|
|
|
|
|
|
|
|
|
|
|
|
5 |
now_dir = os.getcwd()
|
6 |
sys.path.append(now_dir)
|
7 |
|
8 |
+
|
9 |
+
class InstallationError(Exception):
|
10 |
+
def __init__(self, message="InstallationError"):
|
11 |
+
self.message = message
|
12 |
+
super().__init__(self.message)
|
13 |
+
|
14 |
+
|
15 |
+
try:
|
16 |
+
system_drive = os.getenv("SystemDrive")
|
17 |
+
current_drive = os.path.splitdrive(now_dir)[0]
|
18 |
+
if current_drive.upper() != system_drive.upper():
|
19 |
+
raise InstallationError(
|
20 |
+
f"Error: Current working directory is not on the default system drive ({system_drive}). Please move Applio in the correct drive."
|
21 |
+
)
|
22 |
+
except:
|
23 |
+
pass
|
24 |
+
else:
|
25 |
+
if "OneDrive" in now_dir:
|
26 |
+
raise InstallationError(
|
27 |
+
"Error: Current working directory is on OneDrive. Please move Applio in another folder."
|
28 |
+
)
|
29 |
+
elif " " in now_dir:
|
30 |
+
raise InstallationError(
|
31 |
+
"Error: Current working directory contains spaces. Please move Applio in another folder."
|
32 |
+
)
|
33 |
+
try:
|
34 |
+
now_dir.encode("ascii")
|
35 |
+
except UnicodeEncodeError:
|
36 |
+
raise InstallationError(
|
37 |
+
"Error: Current working directory contains non-ASCII characters. Please move Applio in another folder."
|
38 |
+
)
|
39 |
+
|
40 |
from tabs.inference.inference import inference_tab
|
41 |
from tabs.train.train import train_tab
|
42 |
from tabs.extra.extra import extra_tab
|
|
|
44 |
from tabs.download.download import download_tab
|
45 |
from tabs.tts.tts import tts_tab
|
46 |
from tabs.settings.presence import presence_tab
|
47 |
+
from tabs.settings.themes import theme_tab
|
48 |
+
|
49 |
+
import assets.themes.loadThemes as loadThemes
|
50 |
|
51 |
from assets.i18n.i18n import I18nAuto
|
52 |
|
|
|
56 |
|
57 |
RPCManager.start_presence()
|
58 |
|
59 |
+
my_applio = loadThemes.load_json()
|
60 |
+
if my_applio:
|
61 |
+
pass
|
62 |
+
else:
|
63 |
+
my_applio = "ParityError/Interstellar"
|
64 |
+
|
65 |
+
with gr.Blocks(theme=my_applio, title="Applio") as Applio:
|
66 |
gr.Markdown("# Applio")
|
67 |
gr.Markdown(
|
68 |
i18n(
|
|
|
77 |
with gr.Tab(i18n("Inference")):
|
78 |
inference_tab()
|
79 |
|
80 |
+
with gr.Tab(i18n("Train")):
|
81 |
+
train_tab()
|
82 |
|
83 |
with gr.Tab(i18n("TTS")):
|
84 |
tts_tab()
|
|
|
92 |
with gr.Tab(i18n("Report a Bug")):
|
93 |
report_tab()
|
94 |
|
95 |
+
with gr.Tab(i18n("Settings")):
|
96 |
+
presence_tab()
|
97 |
+
theme_tab()
|
98 |
|
99 |
|
100 |
if __name__ == "__main__":
|
101 |
+
Applio.launch(
|
102 |
+
favicon_path="assets/ICON.ico",
|
103 |
+
share="--share" in sys.argv,
|
104 |
+
inbrowser="--open" in sys.argv,
|
105 |
+
server_port=6969,
|
106 |
+
)
|
assets/i18n/languages/pl_PL.json
CHANGED
@@ -1,113 +1,131 @@
|
|
1 |
{
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
}
|
|
|
1 |
{
|
2 |
+
"Ultimate voice cloning tool, meticulously optimized for unrivaled power, modularity, and user-friendly experience.": "Najlepsze narzędzie do klonowania głosu, skrupulatnie zoptymalizowane pod kątem niezrównanej mocy, modułowości i przyjazności dla użytkownika.",
|
3 |
+
"This section contains some extra utilities that often may be in experimental phases.": "Ta sekcja zawiera kilka dodatkowych narzędzi, które często mogą znajdować się w fazie eksperymentalnej.",
|
4 |
+
"Output Information": "Informacje wyjściowe",
|
5 |
+
|
6 |
+
"Inference": "Inferencja",
|
7 |
+
"Train": "Trening",
|
8 |
+
"Extra": "Dodatkowe funkcje",
|
9 |
+
"Merge Audios": "Scal audio",
|
10 |
+
"Processing": "Przetwarzanie",
|
11 |
+
"Audio Analyzer": "Analizator dźwięku",
|
12 |
+
"Model Information": "Informacje o modelu",
|
13 |
+
"Download": "Pobieranie",
|
14 |
+
"Report a Bug": "Zgłoś błąd",
|
15 |
+
|
16 |
+
"Preprocess": "Przetwarzanie wstępne",
|
17 |
+
"Model Name": "Nazwa modelu",
|
18 |
+
"Enter model name": "Wprowadź nazwę modelu",
|
19 |
+
"Dataset Path": "Ścieżka zestawu danych",
|
20 |
+
"Enter dataset path": "Wprowadź ścieżkę zestawu danych",
|
21 |
+
"Sampling Rate": "Częstotliwość próbkowania",
|
22 |
+
"RVC Version": "Wersja RVC",
|
23 |
+
"Preprocess Dataset": "Przetwórz wstępnie zestaw danych",
|
24 |
+
|
25 |
+
"Extract": "Wypakuj",
|
26 |
+
"Hop Length": "Długość przeskoku",
|
27 |
+
"Batch Size": "Wielkość partii",
|
28 |
+
"Save Every Epoch": "Zapisz każdą epokę",
|
29 |
+
"Total Epoch": "Wszystkich epok",
|
30 |
+
"Pretrained": "Wstępnie wytrenowany",
|
31 |
+
"Save Only Latest": "Zapisz tylko najnowszą",
|
32 |
+
"Save Every Weights": "Oszczędzaj każdą wagę",
|
33 |
+
"Custom Pretrained": "Niestandardowe wstępnie wytrenowane",
|
34 |
+
"Upload Pretrained Model": "Przekazywanie wstępnie wytrenowanego modelu",
|
35 |
+
"Pretrained Custom Settings": "Wstępnie wytrenowane ustawienia niestandardowe",
|
36 |
+
"The file you dropped is not a valid pretrained file. Please try again.": "Upuszczony plik nie jest prawidłowym wstępnie wytrenowanym plikiem. Spróbuj ponownie.",
|
37 |
+
"Click the refresh button to see the pretrained file in the dropdown menu.": "Kliknij przycisk odświeżania, aby wyświetlić wstępnie wytrenowany plik w menu rozwijanym.",
|
38 |
+
"Pretrained G Path": "Niestandardowa ścieżka wstępnie wytrenowanego modelu G",
|
39 |
+
"Pretrained D Path": "Niestandardowa ścieżka wstępnie wytrenowanego modelu D",
|
40 |
+
"GPU Settings": "Ustawienia GPU",
|
41 |
+
"GPU Custom Settings": "Niestandardowe ustawienia GPU",
|
42 |
+
"GPU Number": "Numer GPU",
|
43 |
+
"0 to ∞ separated by -": "Od 0 do ∞ oddzielone -",
|
44 |
+
"GPU Information": "Informacje o procesorze GPU",
|
45 |
+
"Pitch Guidance": "Wskazówki dotyczące wysokości dźwięku",
|
46 |
+
"Extract Features": "Wyodrębnij funkcje",
|
47 |
+
|
48 |
+
"Start Training": "Rozpocznij trening",
|
49 |
+
"Generate Index": "Generuj Index",
|
50 |
+
|
51 |
+
"Voice Model": "Model głosu",
|
52 |
+
"Index File": "Plik indeksu",
|
53 |
+
"Refresh": "Odśwież",
|
54 |
+
"Unload Voice": "Przeładuj głos od nowa",
|
55 |
+
|
56 |
+
"Single": "Pojedyńczy plik",
|
57 |
+
"Upload Audio": "Prześlij plik Audio",
|
58 |
+
"Select Audio": "Wybierz plik Audio",
|
59 |
+
"Advanced Settings": "Ustawienia Zaawansowane",
|
60 |
+
|
61 |
+
"Clear Outputs (Deletes all audios in assets/audios)": "Wyczyść wyjścia (usuwa wszystkie pliki audio w zasobach/plikach audio)",
|
62 |
+
"Custom Output Path": "Niestandardowa ścieżka wyjściowa",
|
63 |
+
"Output Path": "Ścieżka wyjściowa",
|
64 |
+
"Split Audio": "Rozdziel dzwięk",
|
65 |
+
"Pitch": "Tonacja",
|
66 |
+
"If >=3: apply median filtering to the harvested pitch results. The value represents the filter radius and can reduce breathiness": "Jeśli >=3: zastosuj filtrowanie mediany do zebranych wyników skoku. Wartość reprezentuje promień filtra i może zmniejszyć oddychanie",
|
67 |
+
"Search Feature Ratio": "Współczynnik funkcji wyszukiwania",
|
68 |
+
"Pitch extraction algorithm": "Algorytm ekstrakcji wysokości tonacji",
|
69 |
+
"Convert": "Konwertuj",
|
70 |
+
"Export Audio": "Eksportuj dźwięk",
|
71 |
+
|
72 |
+
"Batch": "Partia",
|
73 |
+
"Input Folder": "Folder wejściowy",
|
74 |
+
"Enter input path": "Wprowadź ścieżkę wejściową",
|
75 |
+
"Output Folder": "Folder wyjściowy",
|
76 |
+
"Enter output path": "Wprowadź ścieżkę wyjściową",
|
77 |
+
|
78 |
+
"Get information about the audio": "Sprawdź informację o dźwięku",
|
79 |
+
"Information about the audio file": "Informacje o pliku audio",
|
80 |
+
"Waiting for information...": "Czekam na informację...",
|
81 |
+
|
82 |
+
"Model fusion": "Fuzja modeli",
|
83 |
+
"Weight for Model A": "Waga dla modelu A",
|
84 |
+
"Whether the model has pitch guidance": "Czy model ma wskazówki dotyczące wysokości dźwięku",
|
85 |
+
"Model architecture version": "Wersja architektury modelu",
|
86 |
+
"Path to Model A": "Ścieżka do Modelu A",
|
87 |
+
"Path to Model B": "Ścieżka do Modelu B",
|
88 |
+
"Path to model": "Ścieżka do modelu",
|
89 |
+
"Model information to be placed": "Informacje o modelu, które mają zostać umieszczone",
|
90 |
+
"Fusion": "Fuzja",
|
91 |
+
|
92 |
+
"Modify model information": "Modyfikowanie informacji o modelu",
|
93 |
+
"Path to Model": "Ścieżka do modelu",
|
94 |
+
"Model information to be modified": "Informacje o modelu, które mają zostać zmodyfikowane",
|
95 |
+
"Save file name": "Zapisz nazwę pliku",
|
96 |
+
"Modify": "Zmień",
|
97 |
+
|
98 |
+
"View model information": "Zobacz informacje o modelu",
|
99 |
+
"View": "Zobacz",
|
100 |
+
"Model extraction": "Wyodrębnianie modelu",
|
101 |
+
"Model conversion": "Konwersja modelu",
|
102 |
+
"Pth file": "Plik pth",
|
103 |
+
"Output of the pth file": "Wyjście pliku pth",
|
104 |
+
|
105 |
+
"# How to Report an Issue on GitHub": "# Jak zgłosić problem na GitHub",
|
106 |
+
"1. Click on the 'Record Screen' button below to start recording the issue you are experiencing.": "1. Kliknij przycisk \"Ekran nagrywania\" poniżej, aby rozpocząć nagrywanie napotkanego problemu.",
|
107 |
+
"2. Once you have finished recording the issue, click on the 'Stop Recording' button (the same button, but the label changes depending on whether you are actively recording or not).": "2. Po zakończeniu nagrywania problemu kliknij przycisk \"Zatrzymaj nagrywanie\" (ten sam przycisk, ale etykieta zmienia się w zależności od tego, czy aktywnie nagrywasz, czy nie).",
|
108 |
+
"3. Go to [GitHub Issues](https://github.com/IAHispano/Applio/issues) and click on the 'New Issue' button.": "3. Przejdź do [GitHub Issues](https://github.com/IAHispano/Applio/issues) i kliknij przycisk \"Nowe zgłoszenie\".",
|
109 |
+
"4. Complete the provided issue template, ensuring to include details as needed, and utilize the assets section to upload the recorded file from the previous step.": "4. Wypełnij dostarczony szablon problemu, upewniając się, że w razie potrzeby dołączyłeś szczegóły, i skorzystaj z sekcji zasobów, aby przesłać nagrany plik z poprzedniego kroku.",
|
110 |
+
|
111 |
+
"Record Screen": "Nagrywanie Ekranu",
|
112 |
+
"Record": "Nagraj",
|
113 |
+
"Stop Recording": "Zatrzymaj nagrywanie",
|
114 |
+
|
115 |
+
"Introduce the model .pth path": "Wprowadzenie ścieżki pliku .pth modelu",
|
116 |
+
"See Model Information": "Zobacz informacje o modelu",
|
117 |
+
|
118 |
+
"## Download Model": "## Pobierz model",
|
119 |
+
"Model Link": "Link do modelu",
|
120 |
+
"Introduce the model link": "Wprowadzenie linku do modelu",
|
121 |
+
"Download Model": "Pobierz model",
|
122 |
+
"## Drop files": "## Upuść pliki",
|
123 |
+
"Drag your .pth file and .index file into this space. Drag one and then the other.": "Przeciągnij plik .pth i plik .index do tego miejsca. Pliki przeciągnij pojedyńczo.",
|
124 |
+
|
125 |
+
"TTS Voices": "Głosy TTS",
|
126 |
+
"Text to Synthesize": "Tekst do syntezy",
|
127 |
+
"Enter text to synthesize": "Wpisz tutaj tekst który ma zostać przetworzony...",
|
128 |
+
"Output Path for TTS Audio": "Ścieżka wyjściowa dla TTS Audio",
|
129 |
+
"Output Path for RVC Audio": "Ścieżka wyjściowa dla dźwięku RVC",
|
130 |
+
"Enable Applio integration with Discord presence": "Włącz integrację Applio z Discord"
|
131 |
}
|
assets/themes/Applio.py
ADDED
@@ -0,0 +1,284 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from __future__ import annotations
|
2 |
+
|
3 |
+
from typing import Iterable
|
4 |
+
import gradio as gr
|
5 |
+
|
6 |
+
# gr.themes.builder()
|
7 |
+
from gradio.themes.base import Base
|
8 |
+
from gradio.themes.utils import colors, fonts, sizes
|
9 |
+
import time
|
10 |
+
|
11 |
+
|
12 |
+
class Applio(Base):
|
13 |
+
def __init__(
|
14 |
+
self,
|
15 |
+
*,
|
16 |
+
primary_hue: colors.Color | str = colors.green,
|
17 |
+
secondary_hue: colors.Color | str = colors.emerald,
|
18 |
+
neutral_hue: colors.Color | str = colors.neutral,
|
19 |
+
spacing_size: sizes.Size | str = sizes.spacing_md,
|
20 |
+
radius_size: sizes.Size | str = sizes.radius_md,
|
21 |
+
text_size: sizes.Size | str = sizes.text_lg,
|
22 |
+
font: fonts.Font | str | Iterable[fonts.Font | str] = (
|
23 |
+
"Syne V",
|
24 |
+
fonts.GoogleFont("Syne"),
|
25 |
+
"ui-sans-serif",
|
26 |
+
"system-ui",
|
27 |
+
),
|
28 |
+
font_mono: fonts.Font | str | Iterable[fonts.Font | str] = (
|
29 |
+
"ui-monospace",
|
30 |
+
fonts.GoogleFont("Nunito Sans"),
|
31 |
+
),
|
32 |
+
):
|
33 |
+
super().__init__(
|
34 |
+
primary_hue=primary_hue,
|
35 |
+
secondary_hue=secondary_hue,
|
36 |
+
neutral_hue=neutral_hue,
|
37 |
+
spacing_size=spacing_size,
|
38 |
+
radius_size=radius_size,
|
39 |
+
text_size=text_size,
|
40 |
+
font=font,
|
41 |
+
font_mono=font_mono,
|
42 |
+
)
|
43 |
+
self.name = ("Applio",)
|
44 |
+
self.secondary_100 = ("#dbeafe",)
|
45 |
+
self.secondary_200 = ("#bfdbfe",)
|
46 |
+
self.secondary_300 = ("#93c5fd",)
|
47 |
+
self.secondary_400 = ("#60a5fa",)
|
48 |
+
self.secondary_50 = ("#eff6ff",)
|
49 |
+
self.secondary_500 = ("#3b82f6",)
|
50 |
+
self.secondary_600 = ("#2563eb",)
|
51 |
+
self.secondary_700 = ("#1d4ed8",)
|
52 |
+
self.secondary_800 = ("#1e40af",)
|
53 |
+
self.secondary_900 = ("#1e3a8a",)
|
54 |
+
self.secondary_950 = ("#1d3660",)
|
55 |
+
|
56 |
+
super().set(
|
57 |
+
# Blaise
|
58 |
+
background_fill_primary="black",
|
59 |
+
background_fill_primary_dark="black",
|
60 |
+
background_fill_secondary="black",
|
61 |
+
background_fill_secondary_dark="black",
|
62 |
+
block_background_fill="*neutral_800",
|
63 |
+
block_background_fill_dark="*neutral_800",
|
64 |
+
block_border_color="*border_color_primary",
|
65 |
+
block_border_color_dark="*border_color_primary",
|
66 |
+
block_border_width="1px",
|
67 |
+
block_border_width_dark="1px",
|
68 |
+
block_info_text_color="*body_text_color_subdued",
|
69 |
+
block_info_text_color_dark="*body_text_color_subdued",
|
70 |
+
block_info_text_size="*text_sm",
|
71 |
+
block_info_text_weight="400",
|
72 |
+
block_label_background_fill="*background_fill_primary",
|
73 |
+
block_label_background_fill_dark="*background_fill_secondary",
|
74 |
+
block_label_border_color="*border_color_primary",
|
75 |
+
block_label_border_color_dark="*border_color_primary",
|
76 |
+
block_label_border_width="1px",
|
77 |
+
block_label_border_width_dark="1px",
|
78 |
+
block_label_margin="0",
|
79 |
+
block_label_padding="*spacing_sm *spacing_lg",
|
80 |
+
block_label_radius="calc(*radius_lg - 1px) 0 calc(*radius_lg - 1px) 0",
|
81 |
+
block_label_right_radius="0 calc(*radius_lg - 1px) 0 calc(*radius_lg - 1px)",
|
82 |
+
block_label_shadow="*block_shadow",
|
83 |
+
block_label_text_color="*neutral_200",
|
84 |
+
block_label_text_color_dark="*neutral_200",
|
85 |
+
block_label_text_weight="400",
|
86 |
+
block_padding="*spacing_xl",
|
87 |
+
block_radius="*radius_md",
|
88 |
+
block_shadow="none",
|
89 |
+
block_shadow_dark="none",
|
90 |
+
block_title_background_fill="rgba(46,85,65,255)",
|
91 |
+
block_title_background_fill_dark="rgba(46,85,65,255)",
|
92 |
+
block_title_border_color="none",
|
93 |
+
block_title_border_color_dark="none",
|
94 |
+
block_title_border_width="0px",
|
95 |
+
block_title_padding="*block_label_padding",
|
96 |
+
block_title_radius="*block_label_radius",
|
97 |
+
block_title_text_color="*neutral_200",
|
98 |
+
block_title_text_color_dark="*neutral_200",
|
99 |
+
block_title_text_size="*text_md",
|
100 |
+
block_title_text_weight="600",
|
101 |
+
body_background_fill="black",
|
102 |
+
body_background_fill_dark="black",
|
103 |
+
body_text_color="white",
|
104 |
+
body_text_color_dark="white",
|
105 |
+
body_text_color_subdued="*neutral_400",
|
106 |
+
body_text_color_subdued_dark="*neutral_400",
|
107 |
+
body_text_size="*text_md",
|
108 |
+
body_text_weight="400",
|
109 |
+
border_color_accent="*neutral_600",
|
110 |
+
border_color_accent_dark="*neutral_600",
|
111 |
+
border_color_primary="*neutral_800",
|
112 |
+
border_color_primary_dark="*neutral_800",
|
113 |
+
button_border_width="*input_border_width",
|
114 |
+
button_border_width_dark="*input_border_width",
|
115 |
+
button_cancel_background_fill="*button_secondary_background_fill",
|
116 |
+
button_cancel_background_fill_dark="*button_secondary_background_fill",
|
117 |
+
button_cancel_background_fill_hover="*button_cancel_background_fill",
|
118 |
+
button_cancel_background_fill_hover_dark="*button_cancel_background_fill",
|
119 |
+
button_cancel_border_color="*button_secondary_border_color",
|
120 |
+
button_cancel_border_color_dark="*button_secondary_border_color",
|
121 |
+
button_cancel_border_color_hover="*button_cancel_border_color",
|
122 |
+
button_cancel_border_color_hover_dark="*button_cancel_border_color",
|
123 |
+
button_cancel_text_color="*button_secondary_text_color",
|
124 |
+
button_cancel_text_color_dark="*button_secondary_text_color",
|
125 |
+
button_cancel_text_color_hover="*button_cancel_text_color",
|
126 |
+
button_cancel_text_color_hover_dark="*button_cancel_text_color",
|
127 |
+
button_large_padding="*spacing_lg calc(2 * *spacing_lg)",
|
128 |
+
button_large_radius="*radius_lg",
|
129 |
+
button_large_text_size="*text_lg",
|
130 |
+
button_large_text_weight="600",
|
131 |
+
button_primary_background_fill="*primary_600",
|
132 |
+
button_primary_background_fill_dark="*primary_600",
|
133 |
+
button_primary_background_fill_hover="*primary_500",
|
134 |
+
button_primary_background_fill_hover_dark="*primary_500",
|
135 |
+
button_primary_border_color="*primary_500",
|
136 |
+
button_primary_border_color_dark="*primary_500",
|
137 |
+
button_primary_border_color_hover="*primary_400",
|
138 |
+
button_primary_border_color_hover_dark="*primary_400",
|
139 |
+
button_primary_text_color="white",
|
140 |
+
button_primary_text_color_dark="white",
|
141 |
+
button_primary_text_color_hover="*button_primary_text_color",
|
142 |
+
button_primary_text_color_hover_dark="*button_primary_text_color",
|
143 |
+
button_secondary_background_fill="transparent",
|
144 |
+
button_secondary_background_fill_dark="transparent",
|
145 |
+
button_secondary_background_fill_hover="*neutral_800",
|
146 |
+
button_secondary_background_fill_hover_dark="*neutral_800",
|
147 |
+
button_secondary_border_color="*neutral_700",
|
148 |
+
button_secondary_border_color_dark="*neutral_700",
|
149 |
+
button_secondary_border_color_hover="*neutral_600",
|
150 |
+
button_secondary_border_color_hover_dark="*neutral_600",
|
151 |
+
button_secondary_text_color="white",
|
152 |
+
button_secondary_text_color_dark="white",
|
153 |
+
button_secondary_text_color_hover="*button_secondary_text_color",
|
154 |
+
button_secondary_text_color_hover_dark="*button_secondary_text_color",
|
155 |
+
button_shadow="none",
|
156 |
+
button_shadow_active="*shadow_inset",
|
157 |
+
button_shadow_hover="none",
|
158 |
+
button_small_padding="*spacing_sm calc(2 * *spacing_sm)",
|
159 |
+
button_small_radius="*radius_lg",
|
160 |
+
button_small_text_size="*text_md",
|
161 |
+
button_small_text_weight="400",
|
162 |
+
button_transition="0.3s ease all",
|
163 |
+
checkbox_background_color="*neutral_700",
|
164 |
+
checkbox_background_color_dark="*neutral_700",
|
165 |
+
checkbox_background_color_focus="*checkbox_background_color",
|
166 |
+
checkbox_background_color_focus_dark="*checkbox_background_color",
|
167 |
+
checkbox_background_color_hover="*checkbox_background_color",
|
168 |
+
checkbox_background_color_hover_dark="*checkbox_background_color",
|
169 |
+
checkbox_background_color_selected="*secondary_600",
|
170 |
+
checkbox_background_color_selected_dark="*secondary_600",
|
171 |
+
checkbox_border_color="*neutral_700",
|
172 |
+
checkbox_border_color_dark="*neutral_700",
|
173 |
+
checkbox_border_color_focus="*secondary_500",
|
174 |
+
checkbox_border_color_focus_dark="*secondary_500",
|
175 |
+
checkbox_border_color_hover="*neutral_600",
|
176 |
+
checkbox_border_color_hover_dark="*neutral_600",
|
177 |
+
checkbox_border_color_selected="*secondary_600",
|
178 |
+
checkbox_border_color_selected_dark="*secondary_600",
|
179 |
+
checkbox_border_radius="*radius_sm",
|
180 |
+
checkbox_border_width="*input_border_width",
|
181 |
+
checkbox_border_width_dark="*input_border_width",
|
182 |
+
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\")",
|
183 |
+
checkbox_label_background_fill="transparent",
|
184 |
+
checkbox_label_background_fill_dark="transparent",
|
185 |
+
checkbox_label_background_fill_hover="transparent",
|
186 |
+
checkbox_label_background_fill_hover_dark="transparent",
|
187 |
+
checkbox_label_background_fill_selected="transparent",
|
188 |
+
checkbox_label_background_fill_selected_dark="transparent",
|
189 |
+
checkbox_label_border_color="transparent",
|
190 |
+
checkbox_label_border_color_dark="transparent",
|
191 |
+
checkbox_label_border_color_hover="transparent",
|
192 |
+
checkbox_label_border_color_hover_dark="transparent",
|
193 |
+
checkbox_label_border_width="transparent",
|
194 |
+
checkbox_label_border_width_dark="transparent",
|
195 |
+
checkbox_label_gap="*spacing_lg",
|
196 |
+
checkbox_label_padding="*spacing_md calc(2 * *spacing_md)",
|
197 |
+
checkbox_label_shadow="none",
|
198 |
+
checkbox_label_text_color="*body_text_color",
|
199 |
+
checkbox_label_text_color_dark="*body_text_color",
|
200 |
+
checkbox_label_text_color_selected="*checkbox_label_text_color",
|
201 |
+
checkbox_label_text_color_selected_dark="*checkbox_label_text_color",
|
202 |
+
checkbox_label_text_size="*text_md",
|
203 |
+
checkbox_label_text_weight="400",
|
204 |
+
checkbox_shadow="*input_shadow",
|
205 |
+
color_accent="*primary_500",
|
206 |
+
color_accent_soft="*primary_50",
|
207 |
+
color_accent_soft_dark="*neutral_700",
|
208 |
+
container_radius="*radius_xl",
|
209 |
+
embed_radius="*radius_lg",
|
210 |
+
error_background_fill="*background_fill_primary",
|
211 |
+
error_background_fill_dark="*background_fill_primary",
|
212 |
+
error_border_color="*border_color_primary",
|
213 |
+
error_border_color_dark="*border_color_primary",
|
214 |
+
error_border_width="1px",
|
215 |
+
error_border_width_dark="1px",
|
216 |
+
error_text_color="#ef4444",
|
217 |
+
error_text_color_dark="#ef4444",
|
218 |
+
form_gap_width="0px",
|
219 |
+
input_background_fill="*neutral_900",
|
220 |
+
input_background_fill_dark="*neutral_900",
|
221 |
+
input_background_fill_focus="*secondary_600",
|
222 |
+
input_background_fill_focus_dark="*secondary_600",
|
223 |
+
input_background_fill_hover="*input_background_fill",
|
224 |
+
input_background_fill_hover_dark="*input_background_fill",
|
225 |
+
input_border_color="*neutral_700",
|
226 |
+
input_border_color_dark="*neutral_700",
|
227 |
+
input_border_color_focus="*secondary_600",
|
228 |
+
input_border_color_focus_dark="*primary_600",
|
229 |
+
input_border_color_hover="*input_border_color",
|
230 |
+
input_border_color_hover_dark="*input_border_color",
|
231 |
+
input_border_width="1px",
|
232 |
+
input_border_width_dark="1px",
|
233 |
+
input_padding="*spacing_xl",
|
234 |
+
input_placeholder_color="*neutral_500",
|
235 |
+
input_placeholder_color_dark="*neutral_500",
|
236 |
+
input_radius="*radius_lg",
|
237 |
+
input_shadow="none",
|
238 |
+
input_shadow_dark="none",
|
239 |
+
input_shadow_focus="*input_shadow",
|
240 |
+
input_shadow_focus_dark="*input_shadow",
|
241 |
+
input_text_size="*text_md",
|
242 |
+
input_text_weight="400",
|
243 |
+
layout_gap="*spacing_xxl",
|
244 |
+
link_text_color="*secondary_500",
|
245 |
+
link_text_color_active="*secondary_500",
|
246 |
+
link_text_color_active_dark="*secondary_500",
|
247 |
+
link_text_color_dark="*secondary_500",
|
248 |
+
link_text_color_hover="*secondary_400",
|
249 |
+
link_text_color_hover_dark="*secondary_400",
|
250 |
+
link_text_color_visited="*secondary_600",
|
251 |
+
link_text_color_visited_dark="*secondary_600",
|
252 |
+
loader_color="*color_accent",
|
253 |
+
loader_color_dark="*color_accent",
|
254 |
+
panel_background_fill="*background_fill_secondary",
|
255 |
+
panel_background_fill_dark="*background_fill_secondary",
|
256 |
+
panel_border_color="*border_color_primary",
|
257 |
+
panel_border_color_dark="*border_color_primary",
|
258 |
+
panel_border_width="1px",
|
259 |
+
panel_border_width_dark="1px",
|
260 |
+
prose_header_text_weight="600",
|
261 |
+
prose_text_size="*text_md",
|
262 |
+
prose_text_weight="400",
|
263 |
+
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\")",
|
264 |
+
section_header_text_size="*text_md",
|
265 |
+
section_header_text_weight="400",
|
266 |
+
shadow_drop="rgba(0,0,0,0.05) 0px 1px 2px 0px",
|
267 |
+
shadow_drop_lg="0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)",
|
268 |
+
shadow_inset="rgba(0,0,0,0.05) 0px 2px 4px 0px inset",
|
269 |
+
shadow_spread="3px",
|
270 |
+
shadow_spread_dark="1px",
|
271 |
+
slider_color="*primary_600",
|
272 |
+
slider_color_dark="*primary_600",
|
273 |
+
stat_background_fill="*primary_500",
|
274 |
+
stat_background_fill_dark="*primary_500",
|
275 |
+
table_border_color="*neutral_700",
|
276 |
+
table_border_color_dark="*neutral_700",
|
277 |
+
table_even_background_fill="*neutral_950",
|
278 |
+
table_even_background_fill_dark="*neutral_950",
|
279 |
+
table_odd_background_fill="*neutral_900",
|
280 |
+
table_odd_background_fill_dark="*neutral_900",
|
281 |
+
table_radius="*radius_lg",
|
282 |
+
table_row_focus="*color_accent_soft",
|
283 |
+
table_row_focus_dark="*color_accent_soft",
|
284 |
+
)
|
assets/themes/loadThemes.py
ADDED
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import ast
|
2 |
+
import json
|
3 |
+
import os
|
4 |
+
import importlib
|
5 |
+
import requests
|
6 |
+
|
7 |
+
|
8 |
+
folder = os.path.dirname(os.path.abspath(__file__))
|
9 |
+
folder = os.path.dirname(folder)
|
10 |
+
folder = os.path.dirname(folder)
|
11 |
+
folder = os.path.join(folder, "assets", "themes")
|
12 |
+
|
13 |
+
import sys
|
14 |
+
|
15 |
+
sys.path.append(folder)
|
16 |
+
|
17 |
+
|
18 |
+
def get_class(filename):
|
19 |
+
with open(filename, "r") as f:
|
20 |
+
for line_number, line in enumerate(f, start=1):
|
21 |
+
if "class " in line:
|
22 |
+
found = line.split("class ")[1].split(":")[0].split("(")[0].strip()
|
23 |
+
return found
|
24 |
+
break
|
25 |
+
return None
|
26 |
+
|
27 |
+
|
28 |
+
def get_list():
|
29 |
+
|
30 |
+
themes_from_files = [
|
31 |
+
os.path.splitext(name)[0]
|
32 |
+
for root, _, files in os.walk(folder, topdown=False)
|
33 |
+
for name in files
|
34 |
+
if name.endswith(".py") and root == folder
|
35 |
+
]
|
36 |
+
|
37 |
+
json_file_path = os.path.join(folder, "theme_list.json")
|
38 |
+
|
39 |
+
try:
|
40 |
+
with open(json_file_path, "r") as json_file:
|
41 |
+
themes_from_url = [item["id"] for item in json.load(json_file)]
|
42 |
+
except FileNotFoundError:
|
43 |
+
themes_from_url = []
|
44 |
+
|
45 |
+
combined_themes = set(themes_from_files + themes_from_url)
|
46 |
+
|
47 |
+
return list(combined_themes)
|
48 |
+
|
49 |
+
|
50 |
+
def select_theme(name):
|
51 |
+
selected_file = name + ".py"
|
52 |
+
full_path = os.path.join(folder, selected_file)
|
53 |
+
if not os.path.exists(full_path):
|
54 |
+
with open(os.path.join(folder, "theme.json"), "w") as json_file:
|
55 |
+
json.dump({"file": None, "class": name}, json_file)
|
56 |
+
print(f"Theme {name} successfully selected, restart applio.")
|
57 |
+
return
|
58 |
+
class_found = get_class(full_path)
|
59 |
+
if class_found:
|
60 |
+
with open(os.path.join(folder, "theme.json"), "w") as json_file:
|
61 |
+
json.dump({"file": selected_file, "class": class_found}, json_file)
|
62 |
+
print(f"Theme {name} successfully selected, restart applio.")
|
63 |
+
else:
|
64 |
+
print(f"Theme {name} was not found.")
|
65 |
+
|
66 |
+
|
67 |
+
def read_json():
|
68 |
+
json_file_name = os.path.join(folder, "theme.json")
|
69 |
+
try:
|
70 |
+
with open(json_file_name, "r") as json_file:
|
71 |
+
data = json.load(json_file)
|
72 |
+
selected_file = data.get("file")
|
73 |
+
class_name = data.get("class")
|
74 |
+
if not selected_file == None and class_name:
|
75 |
+
return class_name
|
76 |
+
elif selected_file == None and class_name:
|
77 |
+
return class_name
|
78 |
+
else:
|
79 |
+
return "ParityError/Interstellar"
|
80 |
+
except:
|
81 |
+
return "ParityError/Interstellar"
|
82 |
+
|
83 |
+
|
84 |
+
def load_json():
|
85 |
+
json_file_name = os.path.join(folder, "theme.json")
|
86 |
+
try:
|
87 |
+
with open(json_file_name, "r") as json_file:
|
88 |
+
data = json.load(json_file)
|
89 |
+
selected_file = data.get("file")
|
90 |
+
class_name = data.get("class")
|
91 |
+
if not selected_file == None and class_name:
|
92 |
+
module = importlib.import_module(selected_file[:-3])
|
93 |
+
obtained_class = getattr(module, class_name)
|
94 |
+
instance = obtained_class()
|
95 |
+
print(f"Theme Loaded: {class_name}")
|
96 |
+
return instance
|
97 |
+
elif selected_file == None and class_name:
|
98 |
+
return class_name
|
99 |
+
else:
|
100 |
+
print("The theme is incorrect.")
|
101 |
+
return None
|
102 |
+
except Exception as e:
|
103 |
+
print(f"Error Loading: {str(e)}")
|
104 |
+
return None
|
assets/themes/theme.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{"file": null, "class": "naughtondale/monochrome"}
|
assets/themes/theme_list.json
ADDED
@@ -0,0 +1,751 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[
|
2 |
+
{
|
3 |
+
"id": "freddyaboulton/dracula_revamped",
|
4 |
+
"likes": 10,
|
5 |
+
"sha": "1cc28500a01a5e7b2605e45d2cf6260bd8c12d81",
|
6 |
+
"lastModified": "2023-03-23T19:46:29.000Z",
|
7 |
+
"screenshot_id": "freddyaboulton_dracula_revamped"
|
8 |
+
},
|
9 |
+
{
|
10 |
+
"id": "freddyaboulton/bad-theme-space",
|
11 |
+
"likes": 0,
|
12 |
+
"sha": "3fe08b94b1198880d81bbb84f4f50a39f9588a30",
|
13 |
+
"lastModified": "2023-03-14T20:39:44.000Z",
|
14 |
+
"screenshot_id": "freddyaboulton_bad-theme-space"
|
15 |
+
},
|
16 |
+
{
|
17 |
+
"id": "gradio/dracula_revamped",
|
18 |
+
"likes": 0,
|
19 |
+
"sha": "c1eb05480372de759eeb6e7f90c2ce962f3970c5",
|
20 |
+
"lastModified": "2023-06-23T22:34:32.000Z",
|
21 |
+
"screenshot_id": "gradio_dracula_revamped"
|
22 |
+
},
|
23 |
+
{
|
24 |
+
"id": "abidlabs/dracula_revamped",
|
25 |
+
"likes": 0,
|
26 |
+
"sha": "efd80ef5dd8744768f514b590d5c74b4de0a80d4",
|
27 |
+
"lastModified": "2023-03-19T02:44:09.000Z",
|
28 |
+
"screenshot_id": "abidlabs_dracula_revamped"
|
29 |
+
},
|
30 |
+
{
|
31 |
+
"id": "gradio/dracula_test",
|
32 |
+
"likes": 0,
|
33 |
+
"sha": "e75886284101799069dfcaaea391d7a89818dc6d",
|
34 |
+
"lastModified": "2023-06-11T00:24:51.000Z",
|
35 |
+
"screenshot_id": "gradio_dracula_test"
|
36 |
+
},
|
37 |
+
{
|
38 |
+
"id": "abidlabs/dracula_test",
|
39 |
+
"likes": 0,
|
40 |
+
"sha": "1f34e8290994eabf1c3e35bf347020b41ae5d225",
|
41 |
+
"lastModified": "2023-03-19T03:01:17.000Z",
|
42 |
+
"screenshot_id": "abidlabs_dracula_test"
|
43 |
+
},
|
44 |
+
{
|
45 |
+
"id": "gradio/seafoam",
|
46 |
+
"likes": 4,
|
47 |
+
"sha": "9509787c82360cbae3cb1211ef47a87d56390e37",
|
48 |
+
"lastModified": "2023-03-20T15:02:43.000Z",
|
49 |
+
"screenshot_id": "gradio_seafoam"
|
50 |
+
},
|
51 |
+
{
|
52 |
+
"id": "gradio/glass",
|
53 |
+
"likes": 0,
|
54 |
+
"sha": "35109b62b14d326a8e6e0fe09ef3a3b42b314f4d",
|
55 |
+
"lastModified": "2023-03-20T19:29:05.000Z",
|
56 |
+
"screenshot_id": "gradio_glass"
|
57 |
+
},
|
58 |
+
{
|
59 |
+
"id": "gradio/monochrome",
|
60 |
+
"likes": 7,
|
61 |
+
"sha": "96e9df3769c5f77a12814afaf150f08a6199c86d",
|
62 |
+
"lastModified": "2023-03-20T19:29:07.000Z",
|
63 |
+
"screenshot_id": "gradio_monochrome"
|
64 |
+
},
|
65 |
+
{
|
66 |
+
"id": "gradio/soft",
|
67 |
+
"likes": 5,
|
68 |
+
"sha": "e08938f43ce81181604f3aef79e9f8742f4416c5",
|
69 |
+
"lastModified": "2023-05-04T21:43:25.000Z",
|
70 |
+
"screenshot_id": "gradio_soft"
|
71 |
+
},
|
72 |
+
{
|
73 |
+
"id": "gradio/default",
|
74 |
+
"likes": 2,
|
75 |
+
"sha": "9985aefbea7c40c49a0244096d11c2efc91bf3b4",
|
76 |
+
"lastModified": "2023-03-20T20:39:07.000Z",
|
77 |
+
"screenshot_id": "gradio_default"
|
78 |
+
},
|
79 |
+
{
|
80 |
+
"id": "gradio/base",
|
81 |
+
"likes": 1,
|
82 |
+
"sha": "b68adc18343e4c2ad5ea19c4b306caf31c908135",
|
83 |
+
"lastModified": "2023-03-20T20:39:09.000Z",
|
84 |
+
"screenshot_id": "gradio_base"
|
85 |
+
},
|
86 |
+
{
|
87 |
+
"id": "abidlabs/pakistan",
|
88 |
+
"likes": 4,
|
89 |
+
"sha": "e7869fba77f0cb20180346b703f924eae7eec3a7",
|
90 |
+
"lastModified": "2023-03-21T17:20:50.000Z",
|
91 |
+
"screenshot_id": "abidlabs_pakistan"
|
92 |
+
},
|
93 |
+
{
|
94 |
+
"id": "dawood/microsoft_windows",
|
95 |
+
"likes": 3,
|
96 |
+
"sha": "6dd26f1c3e4ae69e54b62be83574b22f08393d97",
|
97 |
+
"lastModified": "2023-03-21T02:09:15.000Z",
|
98 |
+
"screenshot_id": "dawood_microsoft_windows"
|
99 |
+
},
|
100 |
+
{
|
101 |
+
"id": "ysharma/steampunk",
|
102 |
+
"likes": 3,
|
103 |
+
"sha": "7f751b2c0a01ec7242a3e2ad4d3c18dcace11b40",
|
104 |
+
"lastModified": "2023-03-21T14:07:23.000Z",
|
105 |
+
"screenshot_id": "ysharma_steampunk"
|
106 |
+
},
|
107 |
+
{
|
108 |
+
"id": "ysharma/huggingface",
|
109 |
+
"likes": 0,
|
110 |
+
"sha": "70faa80d1b57da921efc91bf686a19f171960042",
|
111 |
+
"lastModified": "2023-03-22T10:31:26.000Z",
|
112 |
+
"screenshot_id": "ysharma_huggingface"
|
113 |
+
},
|
114 |
+
{
|
115 |
+
"id": "gstaff/xkcd",
|
116 |
+
"likes": 14,
|
117 |
+
"sha": "d06e815d121a7219af517a42ed374c8d3b91fee9",
|
118 |
+
"lastModified": "2023-03-30T03:05:57.000Z",
|
119 |
+
"screenshot_id": "gstaff_xkcd"
|
120 |
+
},
|
121 |
+
{
|
122 |
+
"id": "JohnSmith9982/small_and_pretty",
|
123 |
+
"likes": 11,
|
124 |
+
"sha": "46ce99ba8351c9a10c9ec6d353d3724e6090c610",
|
125 |
+
"lastModified": "2023-03-29T06:06:56.000Z",
|
126 |
+
"screenshot_id": "JohnSmith9982_small_and_pretty"
|
127 |
+
},
|
128 |
+
{
|
129 |
+
"id": "abidlabs/Lime",
|
130 |
+
"likes": 1,
|
131 |
+
"sha": "7bba131266c5a9f0ecc9e5547506a9bcb9cd579c",
|
132 |
+
"lastModified": "2023-03-29T17:15:34.000Z",
|
133 |
+
"screenshot_id": "abidlabs_Lime"
|
134 |
+
},
|
135 |
+
{
|
136 |
+
"id": "freddyaboulton/this-theme-does-not-exist-2",
|
137 |
+
"likes": 0,
|
138 |
+
"sha": "a380539363e2ee4fa32da5a8d3489cb5761f7ed0",
|
139 |
+
"lastModified": "2023-03-29T18:16:28.000Z",
|
140 |
+
"screenshot_id": "freddyaboulton_this-theme-does-not-exist-2"
|
141 |
+
},
|
142 |
+
{
|
143 |
+
"id": "aliabid94/new-theme",
|
144 |
+
"likes": 1,
|
145 |
+
"sha": "2f889da096d7c7d65d2b692621d52b93759f64a5",
|
146 |
+
"lastModified": "2023-03-29T18:18:51.000Z",
|
147 |
+
"screenshot_id": "aliabid94_new-theme"
|
148 |
+
},
|
149 |
+
{
|
150 |
+
"id": "aliabid94/test2",
|
151 |
+
"likes": 0,
|
152 |
+
"sha": "b8fadd91c32ebaf16dbed2bee0c49b33e4179d66",
|
153 |
+
"lastModified": "2023-03-29T18:31:23.000Z",
|
154 |
+
"screenshot_id": "aliabid94_test2"
|
155 |
+
},
|
156 |
+
{
|
157 |
+
"id": "aliabid94/test3",
|
158 |
+
"likes": 0,
|
159 |
+
"sha": "2cad15308144ec11c3282aaa488941ae08b07fbe",
|
160 |
+
"lastModified": "2023-03-29T21:30:19.000Z",
|
161 |
+
"screenshot_id": "aliabid94_test3"
|
162 |
+
},
|
163 |
+
{
|
164 |
+
"id": "aliabid94/test4",
|
165 |
+
"likes": 0,
|
166 |
+
"sha": "a8662c0a010747b7f1defc91d7267aa56c54cbcc",
|
167 |
+
"lastModified": "2023-03-29T21:32:08.000Z",
|
168 |
+
"screenshot_id": "aliabid94_test4"
|
169 |
+
},
|
170 |
+
{
|
171 |
+
"id": "abidlabs/banana",
|
172 |
+
"likes": 0,
|
173 |
+
"sha": "4f981b594f3d41a97342b908242b4f2f7030eefe",
|
174 |
+
"lastModified": "2023-03-29T21:47:20.000Z",
|
175 |
+
"screenshot_id": "abidlabs_banana"
|
176 |
+
},
|
177 |
+
{
|
178 |
+
"id": "freddyaboulton/test-blue",
|
179 |
+
"likes": 1,
|
180 |
+
"sha": "a1a13769927435a9f3429b60dc85a1bd3ddcc499",
|
181 |
+
"lastModified": "2023-03-29T22:29:19.000Z",
|
182 |
+
"screenshot_id": "freddyaboulton_test-blue"
|
183 |
+
},
|
184 |
+
{
|
185 |
+
"id": "gstaff/sketch",
|
186 |
+
"likes": 5,
|
187 |
+
"sha": "607f3e07d3065c1607ddf6896811820131aded96",
|
188 |
+
"lastModified": "2023-03-30T03:14:26.000Z",
|
189 |
+
"screenshot_id": "gstaff_sketch"
|
190 |
+
},
|
191 |
+
{
|
192 |
+
"id": "gstaff/whiteboard",
|
193 |
+
"likes": 5,
|
194 |
+
"sha": "5a3f849daf673e7dfa142af0b686f8292b3b2553",
|
195 |
+
"lastModified": "2023-03-30T03:21:09.000Z",
|
196 |
+
"screenshot_id": "gstaff_whiteboard"
|
197 |
+
},
|
198 |
+
{
|
199 |
+
"id": "ysharma/llamas",
|
200 |
+
"likes": 1,
|
201 |
+
"sha": "9778b106b1384ef3fedf39d3494048aa653469ca",
|
202 |
+
"lastModified": "2023-03-31T14:34:13.000Z",
|
203 |
+
"screenshot_id": "ysharma_llamas"
|
204 |
+
},
|
205 |
+
{
|
206 |
+
"id": "abidlabs/font-test",
|
207 |
+
"likes": 0,
|
208 |
+
"sha": "ebe83851cc8cf974cd25a3ca604c9608085652e3",
|
209 |
+
"lastModified": "2023-03-31T13:58:24.000Z",
|
210 |
+
"screenshot_id": "abidlabs_font-test"
|
211 |
+
},
|
212 |
+
{
|
213 |
+
"id": "YenLai/Superhuman",
|
214 |
+
"likes": 2,
|
215 |
+
"sha": "e949b1ca49ed2eb75951571d155c78e21cc108ca",
|
216 |
+
"lastModified": "2023-03-31T15:33:42.000Z",
|
217 |
+
"screenshot_id": "YenLai_Superhuman"
|
218 |
+
},
|
219 |
+
{
|
220 |
+
"id": "bethecloud/storj_theme",
|
221 |
+
"likes": 14,
|
222 |
+
"sha": "ccf66871a4dae6efa98c62239cafec38489578c8",
|
223 |
+
"lastModified": "2023-04-03T18:28:39.000Z",
|
224 |
+
"screenshot_id": "bethecloud_storj_theme"
|
225 |
+
},
|
226 |
+
{
|
227 |
+
"id": "sudeepshouche/minimalist",
|
228 |
+
"likes": 6,
|
229 |
+
"sha": "0a4e1b7692d9c027e49fcf9ed3dea2f6fc7e4667",
|
230 |
+
"lastModified": "2023-04-01T13:42:52.000Z",
|
231 |
+
"screenshot_id": "sudeepshouche_minimalist"
|
232 |
+
},
|
233 |
+
{
|
234 |
+
"id": "knotdgaf/gradiotest",
|
235 |
+
"likes": 1,
|
236 |
+
"sha": "16a5d6eb98e349baa104f2791bbcf706b3b56961",
|
237 |
+
"lastModified": "2023-04-01T15:46:21.000Z",
|
238 |
+
"screenshot_id": "knotdgaf_gradiotest"
|
239 |
+
},
|
240 |
+
{
|
241 |
+
"id": "ParityError/Interstellar",
|
242 |
+
"likes": 3,
|
243 |
+
"sha": "7f604b2dca6ea3b15f2704590cf4eae76735c5a2",
|
244 |
+
"lastModified": "2023-04-03T01:11:42.000Z",
|
245 |
+
"screenshot_id": "ParityError_Interstellar"
|
246 |
+
},
|
247 |
+
{
|
248 |
+
"id": "ParityError/Anime",
|
249 |
+
"likes": 8,
|
250 |
+
"sha": "b20cc125bcaf3c758a44b60c5420cae20ae81234",
|
251 |
+
"lastModified": "2023-04-03T07:19:29.000Z",
|
252 |
+
"screenshot_id": "ParityError_Anime"
|
253 |
+
},
|
254 |
+
{
|
255 |
+
"id": "Ajaxon6255/Emerald_Isle",
|
256 |
+
"likes": 2,
|
257 |
+
"sha": "8d66d68389bd768c6eaa8ee92200ed14fe0dff6a",
|
258 |
+
"lastModified": "2023-04-03T04:28:52.000Z",
|
259 |
+
"screenshot_id": "Ajaxon6255_Emerald_Isle"
|
260 |
+
},
|
261 |
+
{
|
262 |
+
"id": "ParityError/LimeFace",
|
263 |
+
"likes": 3,
|
264 |
+
"sha": "0296aa95034a011e96af5e6772fdb99d42ddddaa",
|
265 |
+
"lastModified": "2023-04-04T21:13:50.000Z",
|
266 |
+
"screenshot_id": "ParityError_LimeFace"
|
267 |
+
},
|
268 |
+
{
|
269 |
+
"id": "finlaymacklon/smooth_slate",
|
270 |
+
"likes": 6,
|
271 |
+
"sha": "e763d0f81b66471eb34c2808a273ace2630578f6",
|
272 |
+
"lastModified": "2023-04-04T01:54:26.000Z",
|
273 |
+
"screenshot_id": "finlaymacklon_smooth_slate"
|
274 |
+
},
|
275 |
+
{
|
276 |
+
"id": "finlaymacklon/boxy_violet",
|
277 |
+
"likes": 3,
|
278 |
+
"sha": "3a2affb3e88997c5b90bb3ff6f102390a3422258",
|
279 |
+
"lastModified": "2023-04-04T02:50:22.000Z",
|
280 |
+
"screenshot_id": "finlaymacklon_boxy_violet"
|
281 |
+
},
|
282 |
+
{
|
283 |
+
"id": "derekzen/stardust",
|
284 |
+
"likes": 0,
|
285 |
+
"sha": "d4ebd83addcf01740267ed5d5ea7e9182b31d16d",
|
286 |
+
"lastModified": "2023-04-06T15:54:34.000Z",
|
287 |
+
"screenshot_id": "derekzen_stardust"
|
288 |
+
},
|
289 |
+
{
|
290 |
+
"id": "EveryPizza/Cartoony-Gradio-Theme",
|
291 |
+
"likes": 2,
|
292 |
+
"sha": "1ca8980c5a1831bab3408e6830d59143c3354cb7",
|
293 |
+
"lastModified": "2023-04-06T18:39:28.000Z",
|
294 |
+
"screenshot_id": "EveryPizza_Cartoony-Gradio-Theme"
|
295 |
+
},
|
296 |
+
{
|
297 |
+
"id": "Ifeanyi/Cyanister",
|
298 |
+
"likes": 0,
|
299 |
+
"sha": "9e4d14e63ab3757d6565bfd4bb6f8e34a9c53b9d",
|
300 |
+
"lastModified": "2023-06-30T07:48:07.000Z",
|
301 |
+
"screenshot_id": "Ifeanyi_Cyanister"
|
302 |
+
},
|
303 |
+
{
|
304 |
+
"id": "Tshackelton/IBMPlex-DenseReadable",
|
305 |
+
"likes": 1,
|
306 |
+
"sha": "05c02cb24e349452f14fc2f027055454d9ed195e",
|
307 |
+
"lastModified": "2023-04-07T03:25:11.000Z",
|
308 |
+
"screenshot_id": "Tshackelton_IBMPlex-DenseReadable"
|
309 |
+
},
|
310 |
+
{
|
311 |
+
"id": "snehilsanyal/scikit-learn",
|
312 |
+
"likes": 1,
|
313 |
+
"sha": "2af5369fed84af9ed119e2bb23c17f986fc3b49d",
|
314 |
+
"lastModified": "2023-04-08T19:10:45.000Z",
|
315 |
+
"screenshot_id": "snehilsanyal_scikit-learn"
|
316 |
+
},
|
317 |
+
{
|
318 |
+
"id": "Himhimhim/xkcd",
|
319 |
+
"likes": 0,
|
320 |
+
"sha": "111e426d5277a226be694b96831b0b0b1ed65118",
|
321 |
+
"lastModified": "2023-04-10T17:04:28.000Z",
|
322 |
+
"screenshot_id": "Himhimhim_xkcd"
|
323 |
+
},
|
324 |
+
{
|
325 |
+
"id": "shivi/calm_seafoam",
|
326 |
+
"likes": 3,
|
327 |
+
"sha": "58f305b41e0cce34f874313a5b6fe920a9a92404",
|
328 |
+
"lastModified": "2023-04-14T21:11:43.000Z",
|
329 |
+
"screenshot_id": "shivi_calm_seafoam"
|
330 |
+
},
|
331 |
+
{
|
332 |
+
"id": "nota-ai/theme",
|
333 |
+
"likes": 3,
|
334 |
+
"sha": "7256dd32c053cc6b06e381d80848e4de6d45d67f",
|
335 |
+
"lastModified": "2023-07-18T01:57:48.000Z",
|
336 |
+
"screenshot_id": "nota-ai_theme"
|
337 |
+
},
|
338 |
+
{
|
339 |
+
"id": "rawrsor1/Everforest",
|
340 |
+
"likes": 0,
|
341 |
+
"sha": "eb673345952d1b1df2adf3a3700a9ea18f329a64",
|
342 |
+
"lastModified": "2023-04-18T07:11:52.000Z",
|
343 |
+
"screenshot_id": "rawrsor1_Everforest"
|
344 |
+
},
|
345 |
+
{
|
346 |
+
"id": "SebastianBravo/simci_css",
|
347 |
+
"likes": 2,
|
348 |
+
"sha": "4f46131c6a54398d36859b3bf54c0b4e29914537",
|
349 |
+
"lastModified": "2023-04-21T06:32:21.000Z",
|
350 |
+
"screenshot_id": "SebastianBravo_simci_css"
|
351 |
+
},
|
352 |
+
{
|
353 |
+
"id": "rottenlittlecreature/Moon_Goblin",
|
354 |
+
"likes": 1,
|
355 |
+
"sha": "470661a89252eebfdf48f93e5bfbe7495e948565",
|
356 |
+
"lastModified": "2023-04-27T04:35:34.000Z",
|
357 |
+
"screenshot_id": "rottenlittlecreature_Moon_Goblin"
|
358 |
+
},
|
359 |
+
{
|
360 |
+
"id": "abidlabs/test-yellow",
|
361 |
+
"likes": 0,
|
362 |
+
"sha": "941816b525f270fa2753af7b5977f26523e434f3",
|
363 |
+
"lastModified": "2023-04-25T00:19:36.000Z",
|
364 |
+
"screenshot_id": "abidlabs_test-yellow"
|
365 |
+
},
|
366 |
+
{
|
367 |
+
"id": "abidlabs/test-yellow3",
|
368 |
+
"likes": 0,
|
369 |
+
"sha": "98468b5d715e6ac8030976a47cf4cf489bebf406",
|
370 |
+
"lastModified": "2023-04-25T00:46:07.000Z",
|
371 |
+
"screenshot_id": "abidlabs_test-yellow3"
|
372 |
+
},
|
373 |
+
{
|
374 |
+
"id": "idspicQstitho/dracula_revamped",
|
375 |
+
"likes": 0,
|
376 |
+
"sha": "e9563fce60dc1bc1f12e1529a935ce26596a353a",
|
377 |
+
"lastModified": "2023-07-02T16:37:11.000Z",
|
378 |
+
"screenshot_id": "idspicQstitho_dracula_revamped"
|
379 |
+
},
|
380 |
+
{
|
381 |
+
"id": "kfahn/AnimalPose",
|
382 |
+
"likes": 0,
|
383 |
+
"sha": "07390407d03456a58f6bc33a99773e6f1ee07e2a",
|
384 |
+
"lastModified": "2023-05-02T14:10:38.000Z",
|
385 |
+
"screenshot_id": "kfahn_AnimalPose"
|
386 |
+
},
|
387 |
+
{
|
388 |
+
"id": "HaleyCH/HaleyCH_Theme",
|
389 |
+
"likes": 4,
|
390 |
+
"sha": "0ad24ea15844ee5bdfecd122a438536008ef9c13",
|
391 |
+
"lastModified": "2023-05-01T14:55:54.000Z",
|
392 |
+
"screenshot_id": "HaleyCH_HaleyCH_Theme"
|
393 |
+
},
|
394 |
+
{
|
395 |
+
"id": "simulKitke/dracula_test",
|
396 |
+
"likes": 0,
|
397 |
+
"sha": "a6c39308892f82fdba58a34b28008b557d68024f",
|
398 |
+
"lastModified": "2023-07-01T11:16:49.000Z",
|
399 |
+
"screenshot_id": "simulKitke_dracula_test"
|
400 |
+
},
|
401 |
+
{
|
402 |
+
"id": "braintacles/CrimsonNight",
|
403 |
+
"likes": 0,
|
404 |
+
"sha": "40f28be62631e1bfb670d3f8adfb8359ccff1b59",
|
405 |
+
"lastModified": "2023-05-04T02:24:37.000Z",
|
406 |
+
"screenshot_id": "braintacles_CrimsonNight"
|
407 |
+
},
|
408 |
+
{
|
409 |
+
"id": "wentaohe/whiteboardv2",
|
410 |
+
"likes": 0,
|
411 |
+
"sha": "0fa1b6a39c6a0c2a47aa9bcd29cce285857acb74",
|
412 |
+
"lastModified": "2023-05-05T17:12:48.000Z",
|
413 |
+
"screenshot_id": "wentaohe_whiteboardv2"
|
414 |
+
},
|
415 |
+
{
|
416 |
+
"id": "reilnuud/polite",
|
417 |
+
"likes": 1,
|
418 |
+
"sha": "eabe137d534934744c2c64b5204244af9b79d806",
|
419 |
+
"lastModified": "2023-05-05T20:58:11.000Z",
|
420 |
+
"screenshot_id": "reilnuud_polite"
|
421 |
+
},
|
422 |
+
{
|
423 |
+
"id": "remilia/Ghostly",
|
424 |
+
"likes": 1,
|
425 |
+
"sha": "6552d91a2d81d2c7481f328fe0fa7f3b70f82e99",
|
426 |
+
"lastModified": "2023-05-11T20:28:34.000Z",
|
427 |
+
"screenshot_id": "remilia_Ghostly"
|
428 |
+
},
|
429 |
+
{
|
430 |
+
"id": "Franklisi/darkmode",
|
431 |
+
"likes": 0,
|
432 |
+
"sha": "54ee9086c8bbc4b11b9a4c2ce7959db45b1cbd96",
|
433 |
+
"lastModified": "2023-05-20T00:48:03.000Z",
|
434 |
+
"screenshot_id": "Franklisi_darkmode"
|
435 |
+
},
|
436 |
+
{
|
437 |
+
"id": "coding-alt/soft",
|
438 |
+
"likes": 0,
|
439 |
+
"sha": "b7c174e1289263db3bd8f268ef9e5b8707ef26ca",
|
440 |
+
"lastModified": "2023-05-24T08:41:09.000Z",
|
441 |
+
"screenshot_id": "coding-alt_soft"
|
442 |
+
},
|
443 |
+
{
|
444 |
+
"id": "xiaobaiyuan/theme_land",
|
445 |
+
"likes": 1,
|
446 |
+
"sha": "b6c1b9bf490c3a542860a38667ac357fedae5ead",
|
447 |
+
"lastModified": "2023-06-10T07:49:57.000Z",
|
448 |
+
"screenshot_id": "xiaobaiyuan_theme_land"
|
449 |
+
},
|
450 |
+
{
|
451 |
+
"id": "step-3-profit/Midnight-Deep",
|
452 |
+
"likes": 1,
|
453 |
+
"sha": "a0ccf4a9e8ca399e7cff8a381b524fd69ce28868",
|
454 |
+
"lastModified": "2023-05-27T09:06:52.000Z",
|
455 |
+
"screenshot_id": "step-3-profit_Midnight-Deep"
|
456 |
+
},
|
457 |
+
{
|
458 |
+
"id": "xiaobaiyuan/theme_demo",
|
459 |
+
"likes": 0,
|
460 |
+
"sha": "0efce78e4e9815d7fdb5beb3ab0f27e9e9a93dfd",
|
461 |
+
"lastModified": "2023-05-27T16:38:54.000Z",
|
462 |
+
"screenshot_id": "xiaobaiyuan_theme_demo"
|
463 |
+
},
|
464 |
+
{
|
465 |
+
"id": "Taithrah/Minimal",
|
466 |
+
"likes": 0,
|
467 |
+
"sha": "b3efc95e5bf40382d049a194e4a2c043bcd88900",
|
468 |
+
"lastModified": "2023-07-06T23:10:18.000Z",
|
469 |
+
"screenshot_id": "Taithrah_Minimal"
|
470 |
+
},
|
471 |
+
{
|
472 |
+
"id": "Insuz/SimpleIndigo",
|
473 |
+
"likes": 0,
|
474 |
+
"sha": "3184021c56adbf924658521388c705abe778ede7",
|
475 |
+
"lastModified": "2023-06-05T23:08:29.000Z",
|
476 |
+
"screenshot_id": "Insuz_SimpleIndigo"
|
477 |
+
},
|
478 |
+
{
|
479 |
+
"id": "zkunn/Alipay_Gradio_theme",
|
480 |
+
"likes": 1,
|
481 |
+
"sha": "93407d4ecdeef5f282ea6e221b5c12463cd5c840",
|
482 |
+
"lastModified": "2023-06-06T12:30:25.000Z",
|
483 |
+
"screenshot_id": "zkunn_Alipay_Gradio_theme"
|
484 |
+
},
|
485 |
+
{
|
486 |
+
"id": "Insuz/Mocha",
|
487 |
+
"likes": 1,
|
488 |
+
"sha": "386cd8cedf80e6d0ad3a94a40c723f00b177ed76",
|
489 |
+
"lastModified": "2023-06-08T09:41:27.000Z",
|
490 |
+
"screenshot_id": "Insuz_Mocha"
|
491 |
+
},
|
492 |
+
{
|
493 |
+
"id": "xiaobaiyuan/theme_brief",
|
494 |
+
"likes": 0,
|
495 |
+
"sha": "a80c4b450c7a9bf7a925465578d494c89171b4ac",
|
496 |
+
"lastModified": "2023-06-10T04:44:42.000Z",
|
497 |
+
"screenshot_id": "xiaobaiyuan_theme_brief"
|
498 |
+
},
|
499 |
+
{
|
500 |
+
"id": "Ama434/434-base-Barlow",
|
501 |
+
"likes": 0,
|
502 |
+
"sha": "34aa703bd83fbe0c9b8ab5cf44b64ee9b3a1b82f",
|
503 |
+
"lastModified": "2023-06-10T16:49:10.000Z",
|
504 |
+
"screenshot_id": "Ama434_434-base-Barlow"
|
505 |
+
},
|
506 |
+
{
|
507 |
+
"id": "Ama434/def_barlow",
|
508 |
+
"likes": 0,
|
509 |
+
"sha": "2b31ff91bad69790c6e6df83127dc650d6d29239",
|
510 |
+
"lastModified": "2023-06-10T17:37:57.000Z",
|
511 |
+
"screenshot_id": "Ama434_def_barlow"
|
512 |
+
},
|
513 |
+
{
|
514 |
+
"id": "Ama434/neutral-barlow",
|
515 |
+
"likes": 1,
|
516 |
+
"sha": "f1d041482761ceab666dbb8dc674d86c53ca54bd",
|
517 |
+
"lastModified": "2023-06-10T18:04:03.000Z",
|
518 |
+
"screenshot_id": "Ama434_neutral-barlow"
|
519 |
+
},
|
520 |
+
{
|
521 |
+
"id": "dawood/dracula_test",
|
522 |
+
"likes": 0,
|
523 |
+
"sha": "903e5b7519138881215eb0d249e29e2fe8e8a024",
|
524 |
+
"lastModified": "2023-06-11T00:06:06.000Z",
|
525 |
+
"screenshot_id": "dawood_dracula_test"
|
526 |
+
},
|
527 |
+
{
|
528 |
+
"id": "nuttea/Softblue",
|
529 |
+
"likes": 0,
|
530 |
+
"sha": "08ffb0293e2b1c9e32a68d2d0e039a2b7d2c2d11",
|
531 |
+
"lastModified": "2023-06-12T14:46:24.000Z",
|
532 |
+
"screenshot_id": "nuttea_Softblue"
|
533 |
+
},
|
534 |
+
{
|
535 |
+
"id": "BlueDancer/Alien_Diffusion",
|
536 |
+
"likes": 0,
|
537 |
+
"sha": "5667eb6299989d0deb9bddd36678aee016b733b4",
|
538 |
+
"lastModified": "2023-06-20T01:03:46.000Z",
|
539 |
+
"screenshot_id": "BlueDancer_Alien_Diffusion"
|
540 |
+
},
|
541 |
+
{
|
542 |
+
"id": "naughtondale/monochrome",
|
543 |
+
"likes": 0,
|
544 |
+
"sha": "a40746c7d69e3d733aa43d05033c3846603f59f1",
|
545 |
+
"lastModified": "2023-07-05T16:30:37.000Z",
|
546 |
+
"screenshot_id": "naughtondale_monochrome"
|
547 |
+
},
|
548 |
+
{
|
549 |
+
"id": "Dagfinn1962/standard",
|
550 |
+
"likes": 0,
|
551 |
+
"sha": "b238047d5dac739d27daeb14bd871249166788a0",
|
552 |
+
"lastModified": "2023-07-08T23:22:59.000Z",
|
553 |
+
"screenshot_id": "Dagfinn1962_standard"
|
554 |
+
},
|
555 |
+
{
|
556 |
+
"id": "Dagfinn1962/goodtheme",
|
557 |
+
"likes": 0,
|
558 |
+
"sha": "870ed9e826152256ba48b407538136712f6d5b35",
|
559 |
+
"lastModified": "2023-07-09T06:17:18.000Z",
|
560 |
+
"screenshot_id": "Dagfinn1962_goodtheme"
|
561 |
+
},
|
562 |
+
{
|
563 |
+
"id": "adam-haile/DSTheme",
|
564 |
+
"likes": 0,
|
565 |
+
"sha": "c45694423d44928ae827108905f7b9b0fb0f5091",
|
566 |
+
"lastModified": "2023-07-13T15:27:28.000Z",
|
567 |
+
"screenshot_id": "adam-haile_DSTheme"
|
568 |
+
},
|
569 |
+
{
|
570 |
+
"id": "karthikeyan-adople/hudsonhayes",
|
571 |
+
"likes": 0,
|
572 |
+
"sha": "fa1aeecfbb9601334d7ce631ebc11a1d1090d385",
|
573 |
+
"lastModified": "2023-07-15T09:28:19.000Z",
|
574 |
+
"screenshot_id": "karthikeyan-adople_hudsonhayes"
|
575 |
+
},
|
576 |
+
{
|
577 |
+
"id": "mindrage/darkmode_grey_red_condensed",
|
578 |
+
"likes": 0,
|
579 |
+
"sha": "3164eec463ee4f8e85e398c2d2bb9150c2960e2c",
|
580 |
+
"lastModified": "2023-07-17T11:14:28.000Z",
|
581 |
+
"screenshot_id": "mindrage_darkmode_grey_red_condensed"
|
582 |
+
},
|
583 |
+
{
|
584 |
+
"id": "mindrage/darkmode_grey_cyan_condensed",
|
585 |
+
"likes": 0,
|
586 |
+
"sha": "8519814e684eda3a2257e861db469d814e6b7865",
|
587 |
+
"lastModified": "2023-07-17T20:11:55.000Z",
|
588 |
+
"screenshot_id": "mindrage_darkmode_grey_cyan_condensed"
|
589 |
+
},
|
590 |
+
{
|
591 |
+
"id": "karthikeyan-adople/hudsonhayes-dark",
|
592 |
+
"likes": 0,
|
593 |
+
"sha": "0c9f3a1f9b69df51db340d2eae42c37e646f810e",
|
594 |
+
"lastModified": "2023-07-18T07:53:37.000Z",
|
595 |
+
"screenshot_id": "karthikeyan-adople_hudsonhayes-dark"
|
596 |
+
},
|
597 |
+
{
|
598 |
+
"id": "jingwora/calm_seafoam",
|
599 |
+
"likes": 0,
|
600 |
+
"sha": "8deebdbbadc8a374bcd4459ec6a8929596c9e0d1",
|
601 |
+
"lastModified": "2023-07-18T11:04:40.000Z",
|
602 |
+
"screenshot_id": "jingwora_calm_seafoam"
|
603 |
+
},
|
604 |
+
{
|
605 |
+
"id": "karthikeyan-adople/hudsonhayes-blue",
|
606 |
+
"likes": 0,
|
607 |
+
"sha": "a752039a807e2d352eb55f352a91371b5a51d3ca",
|
608 |
+
"lastModified": "2023-07-18T13:03:12.000Z",
|
609 |
+
"screenshot_id": "karthikeyan-adople_hudsonhayes-blue"
|
610 |
+
},
|
611 |
+
{
|
612 |
+
"id": "karthikeyan-adople/hudsonhayes-dark1",
|
613 |
+
"likes": 0,
|
614 |
+
"sha": "39ce1038cf2d1d6b189ef2d8d9add1de2a0974c5",
|
615 |
+
"lastModified": "2023-07-19T05:55:40.000Z",
|
616 |
+
"screenshot_id": "karthikeyan-adople_hudsonhayes-dark1"
|
617 |
+
},
|
618 |
+
{
|
619 |
+
"id": "Jameswiller/Globe",
|
620 |
+
"likes": 0,
|
621 |
+
"sha": "534f4cc09d206f89ad2dfc779fc15e42ad6266c2",
|
622 |
+
"lastModified": "2023-07-20T14:29:29.000Z",
|
623 |
+
"screenshot_id": "Jameswiller_Globe"
|
624 |
+
},
|
625 |
+
{
|
626 |
+
"id": "karthikeyan-adople/hudsonhayes-gray",
|
627 |
+
"likes": 0,
|
628 |
+
"sha": "f34a830663d9e11fd1d6d121481590790c8fb102",
|
629 |
+
"lastModified": "2023-07-21T12:44:13.000Z",
|
630 |
+
"screenshot_id": "karthikeyan-adople_hudsonhayes-gray"
|
631 |
+
},
|
632 |
+
{
|
633 |
+
"id": "patrickosornio/my_theme1",
|
634 |
+
"likes": 0,
|
635 |
+
"sha": "1c3c7e6eb7cdf262e0ddf266dfc9ea1af3b40d7c",
|
636 |
+
"lastModified": "2023-07-24T23:42:02.000Z",
|
637 |
+
"screenshot_id": "patrickosornio_my_theme1"
|
638 |
+
},
|
639 |
+
{
|
640 |
+
"id": "earneleh/paris",
|
641 |
+
"likes": 0,
|
642 |
+
"sha": "6bb627aa7597ae7f8ca82a2f21735ced98b38eb8",
|
643 |
+
"lastModified": "2023-07-25T02:05:00.000Z",
|
644 |
+
"screenshot_id": "earneleh_paris"
|
645 |
+
},
|
646 |
+
{
|
647 |
+
"id": "rezponze/TeeFussion",
|
648 |
+
"likes": 0,
|
649 |
+
"sha": "4b57e14ac3369d669aae6c98beaeaae95a282d99",
|
650 |
+
"lastModified": "2023-07-25T13:29:28.000Z",
|
651 |
+
"screenshot_id": "rezponze_TeeFussion"
|
652 |
+
},
|
653 |
+
{
|
654 |
+
"id": "etstertest/test",
|
655 |
+
"likes": 0,
|
656 |
+
"sha": "e86a268f7695c4780de7b5047f91ab8260255718",
|
657 |
+
"lastModified": "2023-07-25T15:36:59.000Z",
|
658 |
+
"screenshot_id": "etstertest_test"
|
659 |
+
},
|
660 |
+
{
|
661 |
+
"id": "dwancin/theme",
|
662 |
+
"likes": 0,
|
663 |
+
"sha": "993b1279634f5f63c2b9a0c5c9be26ab8e06a54f",
|
664 |
+
"lastModified": "2023-08-14T01:38:33.000Z",
|
665 |
+
"screenshot_id": "dwancin_theme"
|
666 |
+
},
|
667 |
+
{
|
668 |
+
"id": "Arkaine/Carl_Glow",
|
669 |
+
"likes": 0,
|
670 |
+
"sha": "577e313eeeffacb8edf4c3558ce0d2cf6c524caa",
|
671 |
+
"lastModified": "2023-07-31T08:53:51.000Z",
|
672 |
+
"screenshot_id": "Arkaine_Carl_Glow"
|
673 |
+
},
|
674 |
+
{
|
675 |
+
"id": "minatosnow/qaigpt",
|
676 |
+
"likes": 0,
|
677 |
+
"sha": "7f5b8e9f2a0269866217b681a37fa97d98dee746",
|
678 |
+
"lastModified": "2023-08-07T16:46:14.000Z",
|
679 |
+
"screenshot_id": "minatosnow_qaigpt"
|
680 |
+
},
|
681 |
+
{
|
682 |
+
"id": "DitchDenis/Denis",
|
683 |
+
"likes": 0,
|
684 |
+
"sha": "6eab339d65ae464ff29c60a07de019eabca95940",
|
685 |
+
"lastModified": "2023-08-05T09:27:43.000Z",
|
686 |
+
"screenshot_id": "DitchDenis_Denis"
|
687 |
+
},
|
688 |
+
{
|
689 |
+
"id": "pikto/theme",
|
690 |
+
"likes": 0,
|
691 |
+
"sha": "056436e1b043e64ec89f7237bc87bc91248f387f",
|
692 |
+
"lastModified": "2023-08-06T20:40:20.000Z",
|
693 |
+
"screenshot_id": "pikto_theme"
|
694 |
+
},
|
695 |
+
{
|
696 |
+
"id": "gary109/black",
|
697 |
+
"likes": 0,
|
698 |
+
"sha": "c7f34c52b967173fc3d57d393fedd475f888fad3",
|
699 |
+
"lastModified": "2023-08-08T02:32:00.000Z",
|
700 |
+
"screenshot_id": "gary109_black"
|
701 |
+
},
|
702 |
+
{
|
703 |
+
"id": "gary109/black_base",
|
704 |
+
"likes": 0,
|
705 |
+
"sha": "438aff99414b07717a17c03fa82791efe0dfde2a",
|
706 |
+
"lastModified": "2023-08-08T02:33:22.000Z",
|
707 |
+
"screenshot_id": "gary109_black_base"
|
708 |
+
},
|
709 |
+
{
|
710 |
+
"id": "gary109/Emerald_Isle",
|
711 |
+
"likes": 0,
|
712 |
+
"sha": "2848f04e27a98ccfc479ccac3831c8c5fd81af8a",
|
713 |
+
"lastModified": "2023-08-08T03:15:00.000Z",
|
714 |
+
"screenshot_id": "gary109_Emerald_Isle"
|
715 |
+
},
|
716 |
+
{
|
717 |
+
"id": "gary109/llamas",
|
718 |
+
"likes": 0,
|
719 |
+
"sha": "6f75c08b3c29f1420105ba08961c0e67a0c151c0",
|
720 |
+
"lastModified": "2023-08-08T03:15:31.000Z",
|
721 |
+
"screenshot_id": "gary109_llamas"
|
722 |
+
},
|
723 |
+
{
|
724 |
+
"id": "gary109/HaleyCH_Theme",
|
725 |
+
"likes": 1,
|
726 |
+
"sha": "6f34b3ee1e9df30820362ab1efc8162f870e12ea",
|
727 |
+
"lastModified": "2023-08-08T03:18:38.000Z",
|
728 |
+
"screenshot_id": "gary109_HaleyCH_Theme"
|
729 |
+
},
|
730 |
+
{
|
731 |
+
"id": "dumdumai/D-GradioTheme",
|
732 |
+
"likes": 0,
|
733 |
+
"sha": "774ac1f0af04f1ba8f08bc52407bc536486e0942",
|
734 |
+
"lastModified": "2023-08-12T14:31:57.000Z",
|
735 |
+
"screenshot_id": "dumdumai_D-GradioTheme"
|
736 |
+
},
|
737 |
+
{
|
738 |
+
"id": "gl198976/The-Rounded",
|
739 |
+
"likes": 0,
|
740 |
+
"sha": "8580b9d44d98cd4bcdbb0194994309331f041d70",
|
741 |
+
"lastModified": "2023-08-14T02:52:05.000Z",
|
742 |
+
"screenshot_id": "gl198976_The-Rounded"
|
743 |
+
},
|
744 |
+
{
|
745 |
+
"id": "NoCrypt/miku",
|
746 |
+
"likes": 0,
|
747 |
+
"sha": "eb068530367ccb43ea327fbee54dd07c66a4b538",
|
748 |
+
"lastModified": "2023-08-15T00:28:30.000Z",
|
749 |
+
"screenshot_id": "NoCrypt_miku"
|
750 |
+
}
|
751 |
+
]
|
tabs/extra/extra.py
CHANGED
@@ -15,8 +15,8 @@ def extra_tab():
|
|
15 |
)
|
16 |
)
|
17 |
|
18 |
-
|
19 |
-
|
20 |
|
21 |
with gr.TabItem(i18n("Audio Analyzer")):
|
22 |
analyzer.analyzer()
|
|
|
15 |
)
|
16 |
)
|
17 |
|
18 |
+
with gr.TabItem(i18n("Processing")):
|
19 |
+
processing.processing()
|
20 |
|
21 |
with gr.TabItem(i18n("Audio Analyzer")):
|
22 |
analyzer.analyzer()
|
tabs/settings/themes.py
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import sys
|
3 |
+
import base64
|
4 |
+
import pathlib
|
5 |
+
import tempfile
|
6 |
+
import gradio as gr
|
7 |
+
|
8 |
+
from assets.i18n.i18n import I18nAuto
|
9 |
+
import assets.themes.loadThemes as loadThemes
|
10 |
+
|
11 |
+
now_dir = os.getcwd()
|
12 |
+
sys.path.append("..")
|
13 |
+
|
14 |
+
i18n = I18nAuto()
|
15 |
+
|
16 |
+
|
17 |
+
def theme_tab():
|
18 |
+
with gr.Row():
|
19 |
+
with gr.Column():
|
20 |
+
themes_select = gr.Dropdown(
|
21 |
+
loadThemes.get_list(),
|
22 |
+
value=loadThemes.read_json(),
|
23 |
+
label=i18n("Theme"),
|
24 |
+
visible=True,
|
25 |
+
)
|
26 |
+
themes_select.change(
|
27 |
+
fn=loadThemes.select_theme,
|
28 |
+
inputs=themes_select,
|
29 |
+
outputs=[],
|
30 |
+
)
|