Skip to content
This repository has been archived by the owner on Oct 22, 2021. It is now read-only.

Development workflow

Jonas Wanke edited this page Apr 8, 2021 · 7 revisions

Note: If you're an external contributor, you can't directly push your code to our repository. Don't worry though, you can simply create a fork (What is a fork?) using the Fork-button in the top right corner or just Click here to fork!.

Selecting an issue

Visit the issues and look for an interesting problem you want to solve.

Once you have selected an issue to work on, assign yourself to that issue so we don't end up with two people doing the same thing^^

Local setup

  1. Clone the repo.
  2. Create a new branch issue/<id>-<lowercase-issue-title-with-dashes> (e.g., issue/103-use-filebrowserpageroute-globally) and switch to that branch.
  3. Open the cloned project in (preferably) Visual Studio Code. You should see a notification with recommended extensions.
  4. Run our code generators:
    1. Run flutter pub get (if Flutter's VS Code plugin hasn't done so already)
    2. Run flutter pub run build_runner build
    3. Run flutter pub run intl_utils:generate (or use the Flutter Intl extension in VS Code)

Working on stuff

Work on your code. Repeat:

  • Implement your changes. Make sure your code adheres to the code style guidelines.
  • Run the app: Choose the predefined SC-launch-config in VS Code or run flutter run --flavor=sc on your command line.
  • Commit your changes.
  • Push to the repo (or your fork).

It's working!

When you're done, file a pull request. We will take a look at your code and once all checks pass, your code can get merged 🏖


Next read: Getting to know the HPI Schul-Cloud app architecture