Skip to content

Commit 683db27

Browse files
authored
Merge pull request #5 from NilsOmDev/streamlit_slim
Fixed build
2 parents 025f990 + 7b2579a commit 683db27

8 files changed

Lines changed: 53 additions & 97 deletions

File tree

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,7 @@ Aufträge / Einsätze werden automatisiert anhand einer Bibliothek erzeugt und a
55
Als Simulation können so die Empfänger in der Fireboard Schnittstelle den Auftrag entgegennehmen und bearbeiten.
66
Der Benutzer dieser Anwendung kann, währrenddessen die Einsätze mit dokumentieren und mit weiteren Informationen sowie alarmierten Fahrzeugen hinterlegen.
77
Die Anwendung dient so im Bereich der Simulation und dem Training von Großschadenslagen mit dem ELW1 / ELW2 in einem Kontext von Hilfsorganisationen.
8+
9+
# Zum kompilieren:
10+
- Venv mit streamlit und streamlit_autorefresh (venv\Scripts\activate)
11+
- pyinstaller run.spec --clean --noconfirm

app_desktop.py

Lines changed: 0 additions & 72 deletions
This file was deleted.

build.bat

Lines changed: 0 additions & 22 deletions
This file was deleted.

hooks/hook-streamlit.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from PyInstaller.utils.hooks import copy_metadata
2+
3+
datas = copy_metadata("streamlit")

run.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import streamlit
2+
import streamlit_autorefresh
3+
4+
import streamlit.web.cli as stcli
5+
import os, sys
6+
7+
8+
def resolve_path(path):
9+
resolved_path = os.path.join(sys._MEIPASS, path)
10+
return resolved_path
11+
12+
13+
if __name__ == "__main__":
14+
sys.argv = [
15+
"streamlit",
16+
"run",
17+
resolve_path("streamlit_app/streamlit_app.py"),
18+
"--global.developmentMode=false",
19+
]
20+
sys.exit(stcli.main())

streamlit_app/.streamlit/config.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@ showSidebarNavigation = false
99
developmentMode = false
1010

1111
[server]
12-
port = 8501
12+
port = 8501
13+
enableCORS = false
14+
enableXsrfProtection = false

streamlit_app/pages/task_table.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import streamlit as st
2-
from streamlit_autorefresh import st_autorefresh
2+
from streamlit_app import st_autorefresh
33
import random
44

55
from Menu import *

streamlit_app/streamlit_app.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
# -*- coding: utf-8 -*-
2+
import os
3+
import sys
4+
import streamlit.components.v1 as components
5+
6+
def init_autorefresh():
7+
"""Initialisiert den Streamlit-Autorefresh-Component sicher unter PyInstaller."""
8+
# Pfad zu den Component-Assets bestimmen
9+
if hasattr(sys, '_MEIPASS'):
10+
# Onefile → Assets sind im _MEIPASS entpackt
11+
component_root = os.path.join(sys._MEIPASS, "streamlit_autorefresh", "frontend", "build")
12+
else:
13+
# Normal oder onedir – Pfad zum installierten Package
14+
import streamlit_autorefresh
15+
component_root = os.path.join(os.path.dirname(streamlit_autorefresh.__file__), "frontend", "build")
16+
17+
# Component registrieren
18+
return components.declare_component("st_autorefresh", path=component_root)
19+
20+
# GLOBALE FUNKTION exportieren
21+
st_autorefresh = init_autorefresh()
22+
123
import streamlit as st
224

325
from backend.Settings_Manager import load_settings
@@ -16,4 +38,3 @@
1638
st.header("Menu")
1739
st.page_link("pages/settings.py", label="Einstellungen", icon="⚙️")
1840
st.page_link("pages/task_table.py", label="Einsatzverwaltung", icon="🚨")
19-

0 commit comments

Comments
 (0)