-
Notifications
You must be signed in to change notification settings - Fork 2
212 lines (161 loc) · 6.97 KB
/
Copy pathrelease.yml
File metadata and controls
212 lines (161 loc) · 6.97 KB
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
name: Veröffentliche Release
on:
push:
tags:
- 'v*'
jobs:
create-release:
runs-on: ubuntu-latest
steps:
- name: Repository auschecken
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Release-Notizen generieren
run: |
cat > release_notes.txt << 'EOF'
# 🎉 Nextcloud Vereins-App
## 🌟 Was ist neu
Diese **Alpha-Version** bietet die Kernfunktionalität für die Verwaltung von Vereinen und Organisationen.
### ✨ Hauptmerkmale
#### 👥 Mitgliederverwaltung
- ✅ Mitglieder anlegen, bearbeiten, löschen
- ✅ Mitgliederdaten: Name, E-Mail, Adresse, IBAN, BIC
- ✅ Rollen-Management: Mitglied, Kassierer, Admin
- ✅ Responsive Tabelle mit Inline-Editing
- ✅ Suchfunktion
#### 💰 Finanzverwaltung
- ✅ Gebühren und Beitragsverfolgung
- ✅ Status-Tracking: offen, bezahlt, überfällig
- ✅ Statistiken: Gesamtausstände, eingezahlte Beträge
- ✅ Gebührentabelle mit Bearbeitungs- und Löschfunktion
- ✅ Nach Mitgliedern filtern
#### 🎨 Benutzer-Erlebnis
- ✅ Dark Mode Support
- ✅ Responsive Design (Desktop, Tablet, Mobile)
- ✅ Nextcloud-native Authentifizierung
- ✅ Moderne Vue 3 + Vite Frontend
- ✅ Keine Fehler in der Browserkonsole
---
## 📋 Anforderungen
- **Nextcloud**: 28.0 oder höher
- **PHP**: 8.1 oder höher
- **Datenbank**: MySQL/MariaDB oder PostgreSQL
- **Browser**: Modern (Chrome, Firefox, Safari, Edge)
---
## 🔧 Installation
### Methode 1: Aus dem Release (Einfach)
1. Herunterladbare Datei herunterladen: `nextcloud-verein-release.tar.gz`
2. In `/var/www/nextcloud/apps/` extrahieren:
```bash
cd /var/www/nextcloud/apps/
tar -xzf nextcloud-verein-*-release.tar.gz
mv nextcloud-verein verein
```
3. App aktivieren:
```bash
sudo -u www-data php /var/www/nextcloud/occ app:enable verein
```
4. Zugreifen unter: `https://your-nextcloud/apps/verein/`
### Methode 2: Aus dem Quellcode (Entwicklung)
1. Repository klonen:
```bash
cd /var/www/nextcloud/apps/
git clone https://github.com/Wacken2012/nextcloud-verein.git verein
cd verein
```
2. Abhängigkeiten installieren:
```bash
npm install
npm run build
```
3. App aktivieren:
```bash
sudo -u www-data php /var/www/nextcloud/occ app:enable verein
```
---
## ✅ Getestete & funktionierende Funktionen
- ✅ Mitglieder-CRUD (Create, Read, Update, Delete)
- ✅ Gebühren-CRUD
- ✅ Statistiken-Dashboard
- ✅ Dark Mode
- ✅ Responsive Design
- ✅ API-Integration
- ✅ Nextcloud-Authentifizierung
---
## ⚠️ Bekannte Einschränkungen
- ⚠️ **Keine Berechtigungsverwaltung**: Alle angemeldeten Benutzer können alle Daten sehen/ändern
- ⚠️ **Keine Datenexporte**: CSV/PDF-Export nicht implementiert
- ⚠️ **Keine Tests**: Unit/Integration Tests ausstehend
- ⚠️ **Keine Dokumentation im Code**: Inline-Kommentare minimal
- ⚠️ **Alpha-Status**: Möglicherweise Bugs, API kann sich ändern
---
## 🗓️ Roadmap
### v0.2.0 (Dezember 2025)
- Berechtigungsverwaltung (Ansicht, Bearbeitung, Admin)
- CSV-Export für Mitglieder und Gebühren
- Gebührenerinnerungen (E-Mail-Benachrichtigungen)
### v0.3.0 (Januar 2026)
- Kalender-Integration (Nextcloud Calendar)
- Gebührenplan und automatische Rechnungen
- Mitgliedsantragsformular
### v1.0.0 (März 2026)
- Vollständige Dokumentation
- Unit- und Integration-Tests
- Performance-Optimierungen
- Nextcloud AppStore-Veröffentlichung
---
## 📚 Dokumentation
- [README.md](https://github.com/Wacken2012/nextcloud-verein/blob/main/README.md) - Hauptdokumentation
- [INSTALLATION.md](https://github.com/Wacken2012/nextcloud-verein/blob/main/INSTALLATION.md) - Installationsanleitung
- [ROADMAP.md](https://github.com/Wacken2012/nextcloud-verein/blob/main/ROADMAP.md) - Entwicklungsplan
- [LIZENZ: AGPL-3.0](https://github.com/Wacken2012/nextcloud-verein/blob/main/LICENSE)
---
## 🧪 Zum Testen
1. App auf Nextcloud-Instanz installieren
2. Zum Tab **"Mitglieder"** navigieren und ein Mitglied hinzufügen
3. Zum Tab **"Finanzen"** gehen und eine Gebühr erstellen
4. Dark Mode testen: Nextcloud-Einstellungen > Erscheinungsbild
5. Auf mobilen Geräten testen
6. Browser-Konsole auf Fehler prüfen (F12)
---
## 💬 Feedback & Fehlermeldungen
Bitte erstellen Sie ein [Issue auf GitHub](https://github.com/Wacken2012/nextcloud-verein/issues) für:
- 🐛 Fehlerberichte
- 💡 Feature-Anfragen
- 🎨 Design-Verbesserungen
- 📝 Dokumentations-Verbesserungen
---
## 📄 Lizenz
Diese App ist lizenziert unter der **AGPL-3.0 Lizenz** - siehe [LICENSE](LICENSE) für Details.
---
## 👏 Credits
Entwickelt mit ❤️ für Nextcloud-Benutzer und Vereinsverwaltungen.
**Danke** an die Nextcloud-Community und alle Mitwirkenden!
EOF
- name: Release-Artefakte vorbereiten
run: |
mkdir -p release-assets
# Artefakt 1: Ohne node_modules
tar --exclude='.git' \
--exclude='node_modules' \
--exclude='npm-debug.log' \
--exclude='.env' \
--exclude='.env.local' \
--exclude='*.log' \
--exclude='.github' \
-czf release-assets/nextcloud-verein-${{ github.ref_name }}.tar.gz .
# Artefakt 2: Mit vorkompiliertem Bundle
cp release-assets/nextcloud-verein-${{ github.ref_name }}.tar.gz \
release-assets/nextcloud-verein-${{ github.ref_name }}-release.tar.gz
ls -lh release-assets/
- name: GitHub Release erstellen
uses: softprops/action-gh-release@v1
with:
body_path: release_notes.txt
prerelease: true
files: |
release-assets/nextcloud-verein-${{ github.ref_name }}.tar.gz
release-assets/nextcloud-verein-${{ github.ref_name }}-release.tar.gz
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}