Wir freuen uns über jede Person, die zu VPlanPlus beitragen möchte. Dennoch gibt es einige Richtlinien, die eingehalten werden müssen.
- Einen GitHub-Account
- Durchschnittliche Kenntnisse über verwendete Programmiersprachen, Frameworks, Bibliotheken und APIs (abhängig vom Beitrag), ausgenommen Übersetzungsbeiträge
- Deutschkenntnisse
Sind alle Voraussetzungen erfüllt, können die ersten Beiträge erstellt werden.
Solltest Du noch nie einen Beitrag zu diesem Repository geleistet haben, empfehlen wir, Bugs oder kleinere Feature-Request, welche mit dem Label good_first_issue markiert sind und noch keinen Bearbeiter zugewiesen haben. Ein fertiger Filter ist hier zu finden.
Sobald Du dich für eine Issue entschieden hast, kommentiere bitte, dass du dieses Issue bearbeiten möchtest. Dann wird ein Maintainer prüfen, ob Du dieses Issue übernehmen kannst. Du kannst daran arbeiten, sobald du der Issue zugewiesen bist.
Du kannst in der App einen Fehler unter Einstellungen -> Hilfe und Support melden. Alternativ kannst DU auch eine Issue anlegen. Verwende dafür bitte das Bug-Template.
Sollten wir einen Rechtschreibfehler übsersehen haben - unabhängig ob in der App oder im Repository - kannst du dies gerne fixen. Bitte lege dazu schnell ein Issue an, dann kannst du auch sofort den Fehler korrigieren.
Sobald du ein Issue zugewiesen bekomen hast, musst du das Projekt auf dein eigenes GitHub-Profil forken. Dort kannst du nun arbeiten. Wenn du fertig bist, erstelle einen Pull-Request.
Gib zunächst main als Ziel an. Dies wird ein aktiver Maintainer später manuell anpassen. Stelle sicher, dass alle Anforderungen erfüllt sind.
Der Code sollte weitestgehend nach Clean-Architecture in MVVM strukturiert sein. Auch sollte er gut lesbar und erkennbar sein. Aktuell gibt es keine richtigen Richtlinien und Strukturen, dies wird erst notwendig, wenn das Projekt doch mehr Contributer umfassen sollte. Aktuell gibt es auch (noch) keine Tests, bitte teste deinen Code bestmöglich manuell (sorry, we know it sucks). Ein Maintainer wird deine Änderungen im Code und ggf. auch in der Praxis reviewen und kommentieren.
Da wir uns einiges an Stress sparen wollen, musst Du bereit sein, alle Rechte des von Dir geschriebenen Codes an uns abzutreten. Sollte dein Name in einer Funktionsdokumentation stehen, so kann es passieren, dass wir dich im Falle von Rückfragen erneut kontaktieren. Sollte sich die Logik der Funktion im Laufe der Zeit wesentlich ändern, so kann es auch passieren, dass dein Name aus dem Kommentar verschwindet/ersetzt wird.
Wir wissen, dass diese Richtlinien sehr vage sind. Dies gibt uns auch etwas Flexibilität um im Einzelfall bessere Entscheidungen treffen zu können. Sollte es Fragen geben, kannst Du gerne ein Issue erstellen.