Beitragen zu Nylo Website
Einleitung
Vielen Dank, dass Sie einen Beitrag zu Nylo Website in Betracht ziehen!
Dieser Leitfaden hilft Ihnen zu verstehen, wie Sie zum Micro-Framework beitragen können. Ob Sie Fehler beheben, Funktionen hinzufügen oder die Dokumentation verbessern -- Ihre Beiträge sind wertvoll für die Nylo Website-Community.
Nylo Website ist in drei Repositories aufgeteilt:
| Repository | Zweck |
|---|---|
| nylo | Die Boilerplate-Anwendung |
| framework | Kern-Framework-Klassen (nylo_framework) |
| support | Support-Bibliothek mit Widgets, Helfern, Hilfsmitteln (nylo_support) |
Erste Schritte
Repositories forken
Forken Sie die Repositories, zu denen Sie beitragen möchten:
Forks klonen
git clone https://github.com/YOUR-USERNAME/nylo
git clone https://github.com/YOUR-USERNAME/framework
git clone https://github.com/YOUR-USERNAME/support
Entwicklungsumgebung
Voraussetzungen
Stellen Sie sicher, dass Folgendes installiert ist:
| Voraussetzung | Mindestversion |
|---|---|
| Flutter | 3.24.0 oder höher |
| Dart SDK | 3.10.7 oder höher |
Lokale Pakete verknüpfen
Öffnen Sie das Nylo-Boilerplate in Ihrem Editor und fügen Sie Dependency-Overrides hinzu, um Ihre lokalen Framework- und Support-Repositories zu verwenden:
pubspec.yaml
dependency_overrides:
nylo_framework:
path: ../framework # Path to your local framework repository
nylo_support:
path: ../support # Path to your local support repository
Führen Sie flutter pub get aus, um die Abhängigkeiten zu installieren.
Jetzt werden Änderungen, die Sie an den Framework- oder Support-Repositories vornehmen, im Nylo-Boilerplate widergespiegelt.
Änderungen testen
Führen Sie die Boilerplate-App aus, um Ihre Änderungen zu testen:
flutter run
Für Widget- oder Helfer-Änderungen sollten Sie Tests im entsprechenden Repository hinzufügen.
Entwicklungsrichtlinien
Code-Stil
- Befolgen Sie den offiziellen Dart-Stilrichtlinien
- Verwenden Sie aussagekräftige Variablen- und Funktionsnamen
- Schreiben Sie klare Kommentare für komplexe Logik
- Fügen Sie Dokumentation für öffentliche APIs hinzu
- Halten Sie den Code modular und wartbar
Dokumentation
Beim Hinzufügen neuer Funktionen:
- Fügen Sie Dartdoc-Kommentare zu öffentlichen Klassen und Methoden hinzu
- Aktualisieren Sie bei Bedarf die relevanten Dokumentationsdateien
- Fügen Sie Codebeispiele in die Dokumentation ein
Testen
Vor dem Einreichen von Änderungen:
- Testen Sie auf iOS- und Android-Geräten/Simulatoren
- Überprüfen Sie nach Möglichkeit die Abwärtskompatibilität
- Dokumentieren Sie Breaking Changes deutlich
- Führen Sie vorhandene Tests aus, um sicherzustellen, dass nichts kaputt ist
Änderungen einreichen
Zuerst diskutieren
Bei neuen Funktionen ist es am besten, zuerst mit der Community zu diskutieren:
Branch erstellen
git checkout -b feature/your-feature-name
Verwenden Sie beschreibende Branch-Namen:
feature/collection-view-paginationfix/storage-null-handlingdocs/update-networking-guide
Änderungen committen
git add .
git commit -m "Add: Your feature description"
Verwenden Sie klare Commit-Nachrichten:
Add: CollectionView grid mode supportFix: NyStorage returning null on first readUpdate: Improve router documentation
Pushen und Pull Request erstellen
git push origin feature/your-feature-name
Erstellen Sie dann einen Pull Request auf GitHub.
Pull-Request-Richtlinien
- Geben Sie eine klare Beschreibung Ihrer Änderungen an
- Verweisen Sie auf zugehörige Issues
- Fügen Sie Screenshots oder Codebeispiele bei, falls zutreffend
- Stellen Sie sicher, dass Ihr PR nur ein Anliegen behandelt
- Halten Sie Änderungen fokussiert und atomar
Probleme melden
Vor dem Melden
- Prüfen Sie, ob das Problem bereits auf GitHub existiert
- Stellen Sie sicher, dass Sie die neueste Version verwenden
- Versuchen Sie, das Problem in einem frischen Projekt zu reproduzieren
Wo melden
Melden Sie Probleme im entsprechenden Repository:
- Boilerplate-Probleme: nylo/issues
- Framework-Probleme: framework/issues
- Support-Bibliothek-Probleme: support/issues
Issue-Vorlage
Geben Sie detaillierte Informationen an:
### Description
Brief description of the issue
### Steps to Reproduce
1. Step one
2. Step two
3. Step three
### Expected Behavior
What should happen
### Actual Behavior
What actually happens
### Environment
- Flutter: 3.24.x
- Dart SDK: 3.10.x
- nylo_framework: ^7.0.0
- OS: macOS/Windows/Linux
- Device: iPhone 15/Pixel 8 (if applicable)
### Code Example
```dart
// Minimal code to reproduce the issue
### Versionsinformationen erhalten
``` bash
# Flutter and Dart versions
flutter --version
# Check your pubspec.yaml for Nylo version
# nylo_framework: ^7.0.0