Catrobat / Paintroid-Flutter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Paintroid

Paintroid, also known as Pocket Paint, is associated to Catroid. It is a graphical paint editor application for the Android platform that, among others, allows setting parts of pictures to transparent.

Since Pocket Paint is now available in Google Play store you can also download Paintroid (Pocket Paint) from here. Alternatively, you can find it on F-Droid here.

For more information oriented towards developers please visit our developers page.

Note This repository is the Flutter version of Paintroid

Getting Started

  1. Install Flutter:
    • Currently used version specified in .github/workflows/main.yml
    • Recommended: Use fvm for managing Flutter versions
  2. Get dependencies: make get
  3. Run app: make run

In case make does not work for you, melos can be used for most of the commands. Check them out in Makefile or in melos.yaml.

What make get does:

  • Runs ./setup-sdk.sh, if fvm is not installed:
    • changes "FLUTTER" (= fvm flutter) to flutter in Makefile
    • changes "DART" (= fvm dart) to dart in Makefile if fvm
    • changes "sdkPath" (= .fvm/flutter_sdk) to auto in melos.yaml
  • Runs ./setup-melos.sh: activates melos if not activated.

Building generated files

  • For protoc:
  • For build-runner: run make build
  • For localizations: run make languages

Tests

  • Run tests for all packages:
    • all: make test
    • unit: make test-unit
    • widget: make test-widget
  • Run tests for a specific package:
    • all: melos test
    • unit: melos test-unit
    • widget: melos test-widget

For integration tests:

  1. Make sure you have an iOS/Android device online by running flutter devices
  2. cd into the package where the test is located
  3. Run flutter test <path-to-integartion-test> -d <DEVICE-ID>
    • Replace <Device-ID> with the ID of the device from flutter devices
    • Replace <path-to-integartion-test> with the actual path to the test (test/...)

Issues

Please report all bugs on our Jira Bugtracker

Contributing

If you want to contribute we suggest that you start with forking our repository and browse the code. Then you can look at our Issue-Tracker and start with fixing one ticket. Please make sure to pick a ticket with the status "Ready for development" and comment on the ticket that you are working on it. We strictly use Test-Driven Development and Clean Code, so first read everything you can about these development methods. Code developed in a different style will not be accepted. When you are done, comment again on the ticket and create a pull request on github. After you've created a pull request we will review your code and do a full testrun on your branch.

Let's start to set up the working environment using the instructions in our Wiki!

Resources and links

License

License of our project (mainly AGPL v3).

About

License:GNU General Public License v3.0


Languages

Language:Dart 97.7%Language:Kotlin 0.9%Language:Swift 0.7%Language:Ruby 0.3%Language:Makefile 0.3%Language:Objective-C 0.0%