Improve desktop UI settings defaults and env inference
All checks were successful
Build Windows App / build-windows (push) Successful in 16m23s
All checks were successful
Build Windows App / build-windows (push) Successful in 16m23s
This commit is contained in:
104
README.md
104
README.md
@@ -1,14 +1,88 @@
|
||||
# EnvHelper
|
||||
|
||||
EnvHelper ist eine Windows-Desktop-App zum Ersetzen von `CHANGE_ME` Platzhaltern in `.env` Dateien.
|
||||
**EnvHelper** ist eine lokale Windows-Desktop-App zum Ausfüllen von `.env` Vorlagen. Sie erkennt `CHANGE_ME` Platzhalter, erzeugt passende Werte im erwarteten Format und gibt eine fertige `.env` aus.
|
||||
|
||||
## Funktionen
|
||||
```text
|
||||
Status: Desktop App
|
||||
Plattform: Windows
|
||||
Stack: Electron, React, Vite, TypeScript
|
||||
Build: Gitea Actions Runner
|
||||
```
|
||||
|
||||
## Highlights
|
||||
|
||||
- `.env` Datei laden oder reinen Text einfügen
|
||||
- `CHANGE_ME...` Platzhalter erkennen
|
||||
- passende Werte anhand von Variablenname und Platzhalter ableiten
|
||||
- gleiche Platzhalter konsistent mit demselben Wert ersetzen
|
||||
- neue `.env` als Text kopieren oder speichern
|
||||
- `CHANGE_ME...` Platzhalter automatisch erkennen
|
||||
- Passwörter, Secrets, Base64-Keys, UUIDs, Ports, URLs und E-Mails heuristisch erzeugen
|
||||
- Gleiche Placeholder konsistent mit demselben Wert ersetzen
|
||||
- Standardwerte pro Key definieren und im Output überschreiben lassen
|
||||
- Hell/Dunkel/System Theme
|
||||
- Einstellungen mit Sprache, Version und Projektinfos
|
||||
- Ausgabe kopieren oder als neue `.env` speichern
|
||||
|
||||
## Vorschau
|
||||
|
||||
Screenshots können später im Repository ergänzt werden.
|
||||
|
||||
```text
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ EnvHelper Datei laden .env speichern Theme Settings │
|
||||
├─────────────────────────────┬───────────────────────────────┤
|
||||
│ Input │ Output │
|
||||
│ DATABASE_URL=...CHANGE_ME │ DATABASE_URL=...generated... │
|
||||
├─────────────────────────────┴───────────────────────────────┤
|
||||
│ Standardwerte Erkannte Anforderungen │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## Beispiel
|
||||
|
||||
Eingabe:
|
||||
|
||||
```env
|
||||
DATABASE_URL=postgresql://hilden_app:CHANGE_ME_POSTGRES_PASSWORD@postgres:5432/hilden_directory
|
||||
POSTGRES_PASSWORD=CHANGE_ME_POSTGRES_PASSWORD
|
||||
SESSION_SECRET=CHANGE_ME_AT_LEAST_32_RANDOM_CHARACTERS
|
||||
ENCRYPTION_KEY_BASE64=CHANGE_ME_32_RANDOM_BYTES_AS_BASE64
|
||||
BOOTSTRAP_ADMIN_EMAIL=admin@example.local
|
||||
```
|
||||
|
||||
Ausgabe:
|
||||
|
||||
```env
|
||||
DATABASE_URL=postgresql://hilden_app:generated-postgres-password@postgres:5432/hilden_directory
|
||||
POSTGRES_PASSWORD=generated-postgres-password
|
||||
SESSION_SECRET=generated-url-safe-secret
|
||||
ENCRYPTION_KEY_BASE64=generated-base64-key
|
||||
BOOTSTRAP_ADMIN_EMAIL=admin@example.local
|
||||
```
|
||||
|
||||
Die tatsächlichen Werte werden zufällig lokal erzeugt.
|
||||
|
||||
## Standardwerte
|
||||
|
||||
Standardwerte werden in einer eigenen Sektion gepflegt. Wenn ein Key dort eingetragen ist, überschreibt der Wert den entsprechenden Output-Key.
|
||||
|
||||
Beispiel:
|
||||
|
||||
```text
|
||||
BOOTSTRAP_ADMIN_EMAIL = admin@example.local
|
||||
```
|
||||
|
||||
Dann wird im Output immer dieser Wert gesetzt, auch wenn die Vorlage bereits eine andere E-Mail enthält.
|
||||
|
||||
## Sicherheit
|
||||
|
||||
EnvHelper arbeitet lokal. Die Werte werden im Renderer mit Web-Crypto erzeugt und nicht an externe Dienste gesendet. Die App ist ein Helfer für Vorlagen, ersetzt aber keine zentrale Secret-Verwaltung für produktive Infrastruktur.
|
||||
|
||||
## Download und Artefakte
|
||||
|
||||
Der Windows-Build erzeugt zwei Dateien:
|
||||
|
||||
- `EnvHelper-0.1.0-setup-x64.exe`
|
||||
- `EnvHelper-0.1.0-portable-x64.exe`
|
||||
|
||||
Die Dateien werden vom Gitea Runner als Actions-Artefakt und als Generic Package veröffentlicht.
|
||||
|
||||
## Entwicklung
|
||||
|
||||
@@ -17,7 +91,7 @@ npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
In einem zweiten Terminal:
|
||||
In einem zweiten Terminal kann der Electron-Build geprüft werden:
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
@@ -25,10 +99,22 @@ npm run build
|
||||
|
||||
## Windows Build
|
||||
|
||||
Der Windows-Build läuft über Gitea Actions:
|
||||
Der Windows-Build läuft über Gitea Actions und nutzt den Linux Runner mit Wine:
|
||||
|
||||
```bash
|
||||
npm run dist:win
|
||||
```
|
||||
|
||||
Die erzeugten Dateien liegen im Runner unter `release/` und werden als Workflow-Artefakt hochgeladen.
|
||||
Workflow:
|
||||
|
||||
```text
|
||||
.gitea/workflows/build-windows.yml
|
||||
```
|
||||
|
||||
Der Runner installiert Node.js, Wine, baut die App mit Electron Builder und lädt die fertigen `.exe` Artefakte hoch.
|
||||
|
||||
## Projektinfos
|
||||
|
||||
- Autor: `MrSphay`
|
||||
- Repository: `MrSphay/envHelper`
|
||||
- App-ID: `de.wilkensxl.envhelper`
|
||||
|
||||
Reference in New Issue
Block a user