diff --git a/CONTRIBUTING.md b/.github/CONTRIBUTING.md similarity index 95% rename from CONTRIBUTING.md rename to .github/CONTRIBUTING.md index 29429ad..05a7f5b 100644 --- a/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -53,7 +53,7 @@ Bevor du Änderungen vorschlägst, stelle bitte sicher, dass du Folgendes beacht Wenn du Fragen hast oder Hilfe brauchst, kontaktiere uns gerne: -📧 Mail: [development@oppro-network.de](mailto:development@oppro-network.de) +📧 Mail: [development@managerx-bot.de](mailto:development@managerx-bot.de) 🌐 Projektseite: [https://github.com/Oppro-net-Development/ManagerX](https://github.com/Oppro-net-Development/ManagerX) 💬 Discord: https://discord.gg/ddAneB8nAu diff --git a/LICENSE b/.github/LICENSE similarity index 100% rename from LICENSE rename to .github/LICENSE diff --git a/renovate.json b/.github/renovate.json similarity index 100% rename from renovate.json rename to .github/renovate.json diff --git a/README.md b/README.md index 4317c32..f3b4649 100644 --- a/README.md +++ b/README.md @@ -21,8 +21,7 @@ Last Commit - - + License

@@ -34,8 +33,6 @@ SQLite Issues Stars - Forks - CodeFactor


@@ -58,6 +55,23 @@ --- +## 📁 Projektstruktur + +```text +ManagerX/ +├── 📂 .github/ # GitHub Config & Metadaten (License, Contributing) +├── 📂 config/ # Bot-Konfiguration (.env, config.yaml) +├── 📂 data/ # Dynamische Daten & Datenbanken +├── 📂 src/ +│ ├── 📂 bot/ # Python Bot Core & Cogs +│ ├── 📂 api/ # FastAPI Dashboard Backend +│ └── 📂 web/ # React Dashboard Frontend +├── 📜 main.py # Haupteinstiegspunkt +└── 📜 vite.config.ts # Web Build Konfiguration +``` + +--- + ## 📦 Quick Install @@ -100,7 +114,7 @@ pip install ManagerX[all]

📥 Detaillierte Installation✨ Features • - 📖 Dokumentation • + 📖 Dokumentation💬 Support

diff --git a/__init__.py b/__init__.py deleted file mode 100644 index a8ce586..0000000 --- a/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from .core import * \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 70c8c56..79ce26d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7016,4 +7016,4 @@ } } } -} +} \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 6f779d0..ccdd299 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,8 +10,8 @@ readme = "README.md" requires-python = ">=3.8" license = {text = "GPL-3.0-or-later"} authors = [ - {name = "OPPRO.NET Development", email = "development@oppro-network.de"}, - {name = "OPPRO.NET Network", email = "contact@oppro-network.de"} + {name = "OPPRO.NET Development", email = "development@managerx-bot.de"}, + {name = "OPPRO.NET Network", email = "contact@managerx-bot.de"} ] classifiers = [ "Programming Language :: Python :: 3.8", @@ -51,8 +51,8 @@ dependencies = [ [project.urls] Homepage = "https://github.com/Oppro-net-Development/ManagerX" -Documentation = "https://docs.oppro-network.de/" -Changelog = "https://docs.oppro-network.de/en/latest/releases/index.html" +Documentation = "https://docs.managerx-bot.de/" +Changelog = "https://docs.managerx-bot.de/en/latest/releases/index.html" BugTracker = "https://github.com/Oppro-net-Development/ManagerX/issues" [project.optional-dependencies] diff --git a/src/bot/core/constants.py b/src/bot/core/constants.py index 3e4498f..04d4df3 100644 --- a/src/bot/core/constants.py +++ b/src/bot/core/constants.py @@ -34,5 +34,5 @@ # --- Texte --- AUTHOR = "ManagerX Network" -FLOOTER = "Powered by OPPRO.NET Network" # Typo im Original ("FLOOTER"), behalte es für Kompatibilität oder korrigiere es -FOOTER = "Powered by OPPRO.NET Network" +FLOOTER = "Powered by ManagerX Development" # Typo im Original ("FLOOTER"), behalte es für Kompatibilität oder korrigiere es +FOOTER = "Powered by ManagerX Development" diff --git a/src/bot/core/dashboard.py b/src/bot/core/dashboard.py index 00ea0d8..38d7864 100644 --- a/src/bot/core/dashboard.py +++ b/src/bot/core/dashboard.py @@ -18,7 +18,7 @@ class DashboardTask: def __init__(self, bot, basedir: Path): self.bot = bot self.basedir = basedir - self.stats_file = basedir / 'bot_stats.json' + self.stats_file = basedir / 'data' / 'bot_stats.json' self._task = None # Task definieren diff --git a/agb.html b/src/web/agb.html similarity index 100% rename from agb.html rename to src/web/agb.html diff --git a/src/web/components/Footer.tsx b/src/web/components/Footer.tsx index ebcf529..5a081bc 100644 --- a/src/web/components/Footer.tsx +++ b/src/web/components/Footer.tsx @@ -130,7 +130,7 @@ export const Footer = memo(function Footer() { {/* column 2 */}
Ressourcen - + Documentation diff --git a/datenschutz.html b/src/web/datenschutz.html similarity index 100% rename from datenschutz.html rename to src/web/datenschutz.html diff --git a/impressum.html b/src/web/impressum.html similarity index 100% rename from impressum.html rename to src/web/impressum.html diff --git a/index.html b/src/web/index.html similarity index 100% rename from index.html rename to src/web/index.html diff --git a/src/web/pages/Datenschutz.tsx b/src/web/pages/Datenschutz.tsx index 962104d..45b1436 100644 --- a/src/web/pages/Datenschutz.tsx +++ b/src/web/pages/Datenschutz.tsx @@ -89,8 +89,8 @@ export const Datenschutz = memo(function Datenschutz() { key={section.id} onClick={() => scrollToSection(section.id)} className={`w-full flex items-center gap-3 px-4 py-3 rounded-xl transition-all duration-300 group text-sm font-semibold border ${activeSection === section.id - ? "bg-primary/10 text-primary border-primary/20 shadow-lg shadow-primary/5" - : "text-slate-400 hover:text-slate-200 hover:bg-white/5 border-transparent" + ? "bg-primary/10 text-primary border-primary/20 shadow-lg shadow-primary/5" + : "text-slate-400 hover:text-slate-200 hover:bg-white/5 border-transparent" }`} >
-

OPPRO.NET Network

+

ManagerX Development Network

Lenny Steiger

Eulauer Str. 24

@@ -157,8 +157,8 @@ export const Datenschutz = memo(function Datenschutz() {

E-Mail:{" "} - - contact@oppro-network.de + + contact@managerx-bot.de

@@ -253,7 +253,7 @@ export const Datenschutz = memo(function Datenschutz() {

Sie haben das Recht auf Auskunft, Berichtigung, Löschung und Widerspruch.

-

Senden Sie uns eine E-Mail an legal@oppro-network.de.

+

Senden Sie uns eine E-Mail an legal@managerx-bot.de.

@@ -286,8 +286,8 @@ export const Datenschutz = memo(function Datenschutz() {

Privacy Support

- - legal@oppro-network.de + + legal@managerx-bot.de

© 2026 ManagerX Development

diff --git a/src/web/pages/Impressum.tsx b/src/web/pages/Impressum.tsx index c2ae45f..5cae37c 100644 --- a/src/web/pages/Impressum.tsx +++ b/src/web/pages/Impressum.tsx @@ -122,7 +122,7 @@ export const Impressum = memo(function Impressum() { Impressum

- Angaben gemäß § 5 DDG. ManagerX ist ein privates Open-Source-Projekt von OPPRO.NET. + Angaben gemäß § 5 DDG. ManagerX ist ein privates Open-Source-Projekt von ManagerX Development.

@@ -146,14 +146,14 @@ export const Impressum = memo(function Impressum() { @@ -195,8 +195,8 @@ export const Impressum = memo(function Impressum() {

Support

- - contact@oppro-network.de + + contact@managerx-bot.de

Stand: Februar 2026 • © ManagerX Development

diff --git a/src/web/pages/Nutzungsbedingungen.tsx b/src/web/pages/Nutzungsbedingungen.tsx index 57d7161..843bb88 100644 --- a/src/web/pages/Nutzungsbedingungen.tsx +++ b/src/web/pages/Nutzungsbedingungen.tsx @@ -90,8 +90,8 @@ export const Nutzungsbedingungen = memo(function Nutzungsbedingungen() { key={section.id} onClick={() => scrollToSection(section.id)} className={`w-full flex items-center gap-3 px-4 py-3 rounded-xl transition-all duration-300 group text-sm font-semibold border ${activeSection === section.id - ? "bg-primary/10 text-primary border-primary/20 shadow-lg shadow-primary/5" - : "text-slate-400 hover:text-slate-200 hover:bg-white/5 border-transparent" + ? "bg-primary/10 text-primary border-primary/20 shadow-lg shadow-primary/5" + : "text-slate-400 hover:text-slate-200 hover:bg-white/5 border-transparent" }`} >

Need help?

Unser Team steht für rechtliche Fragen zur Verfügung.

- + Contact Legal
@@ -133,7 +133,7 @@ export const Nutzungsbedingungen = memo(function Nutzungsbedingungen() {

Bitte lesen Sie diese Bedingungen sorgfältig durch, bevor Sie ManagerX nutzen. - Sie regeln die rechtliche Beziehung zwischen Ihnen und OPPRO.NET. + Sie regeln die rechtliche Beziehung zwischen Ihnen und ManagerX Development.

@@ -221,7 +221,7 @@ export const Nutzungsbedingungen = memo(function Nutzungsbedingungen() {
-

Die Markenrechte an ManagerX, die Logos, das Design und die Web-UI liegen bei OPPRO.NET Network.

+

Die Markenrechte an ManagerX, die Logos, das Design und die Web-UI liegen bei ManagerX Development Network.

Der Quellcode des Bots ist unter der GNU GPL v3.0 lizenziert.

@@ -239,11 +239,11 @@ export const Nutzungsbedingungen = memo(function Nutzungsbedingungen() {
-

Soweit gesetzlich zulässig, haftet OPPRO.NET oder dessen Entwickler nicht für indirekte Schäden, Datenverluste oder Server-Konflikte, die durch die Nutzung des Bots entstehen.

+

Soweit gesetzlich zulässig, haftet ManagerX Development oder dessen Entwickler nicht für indirekte Schäden, Datenverluste oder Server-Konflikte, die durch die Nutzung des Bots entstehen.

-

Sie erklären sich damit einverstanden, OPPRO.NET von allen Forderungen freizustellen, die sich aus Ihrer Nutzung des Dienstes oder Ihrer Verletzung dieser Bedingungen ergeben.

+

Sie erklären sich damit einverstanden, ManagerX Development von allen Forderungen freizustellen, die sich aus Ihrer Nutzung des Dienstes oder Ihrer Verletzung dieser Bedingungen ergeben.

@@ -254,8 +254,8 @@ export const Nutzungsbedingungen = memo(function Nutzungsbedingungen() {

Bei rechtlichen Anfragen erreichen Sie uns unter:

diff --git a/src/web/pages/Status.tsx b/src/web/pages/Status.tsx index b6d2930..1eec302 100644 --- a/src/web/pages/Status.tsx +++ b/src/web/pages/Status.tsx @@ -181,7 +181,7 @@ const Status = memo(function Status() {

Überprüfung erfolgt alle 15 Sekunden via FastAPI-Endpoint.

- + diff --git a/vite.config.ts b/vite.config.ts index 4027700..ca7b22e 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -30,10 +30,10 @@ export default defineConfig(({ mode }) => ({ reportCompressedSize: false, rollupOptions: { input: { - main: path.resolve(__dirname, "index.html"), - datenschutz: path.resolve(__dirname, "datenschutz.html"), - impressum: path.resolve(__dirname, "impressum.html"), - agb: path.resolve(__dirname, "agb.html"), + main: path.resolve(__dirname, "src/web/index.html"), + datenschutz: path.resolve(__dirname, "src/web/datenschutz.html"), + impressum: path.resolve(__dirname, "src/web/impressum.html"), + agb: path.resolve(__dirname, "src/web/agb.html"), }, }, },