FLUTTER ECOSYSTEM

matthew-carroll/flutter_processing

Processing 的 Flutter 版本

flutter_processing 專案封面
Stars
186
Forks
31
最近推送(UTC)
2025年6月21日
專案狀態
未封存
Matt Carroll GitHub avatar
GITHUB User

Matt Carroll ↗

Chief of the Flutter Bounty Hunters. I am SuperDeclarative! Former Flutter team member. Ex-Googler (Flutter, Nest).

SuperDeclarative!
語言DartRubySwiftKotlinObjective-C

此儲存庫發佈的套件

使用的依賴

依賴清單 7 項
  • flutter{"sdk":"flutter"}
  • fast_noise^2.0.0
  • image^4.1.7
  • path^1.8.0
  • flutter_test開發依賴{"sdk":"flutter"}
  • flutter_lints開發依賴^2.0.0
  • golden_toolkit開發依賴^0.15.0

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

展開 / 收合專案 README

Flutter Processing

A Flutter port of Processing.

This project is not affiliated with the Processing project, or related organizations.

The goal of flutter_processing is to provide the same easy learning environment as Processing, but with the additional utility of a production-ready UI toolkit, called Flutter. With traditional Processing, there is minimal professional value in the underlying language. With flutter_processing, the underlying tool, Flutter, is sufficient for employment as an app UI developer. flutter_processing offers an educational tool and an employment opportunity all in one.

Want to see how this project was implemented? Nearly every change was recorded and published to the SuperDeclarative! channel on YouTube.

To see which Processing APIs have been ported to Flutter, see the API Checklist.


Do you get value from this package? Please consider supporting SuperDeclarative!

https://img.shields.io/badge/Donate-%24%24-green


Getting Started

To play with some demos, clone this repository and run the example app!

https://user-images.githubusercontent.com/7259036/154913204-f4fedbd2-1788-47f2-b640-4ff8a9fac705.gif

To paint a canvas with a sketch in Flutter, the way you would in Processing, display a Processing widget and implement a Sketch.

void main() {
  runApp(
    MaterialApp(
      home: Processing(
        sketch: Sketch.simple(
          setup: (sketch) async {
            // TODO: do your typical Sketch setup
            //       stuff here. Call methods on
            //       the provided sketch object.
          },
          draw: (sketch) async {
            // TODO: do your typical Sketch drawing
            //       stuff here. Call methods on
            //       the provided sketch object.
          },
        ),
      ),
    ),
  );
}

To retain and access variables in your Sketch, or to implement a Sketch in a more traditional way, subclass Sketch:

void main() {
  runApp(
    MaterialApp(
      home: Processing(
        sketch: MySketch(),
      ),
    ),
  );
}

class MySketch extends Sketch {
  @override
  Future<void> setup() async {
    // TODO: do setup stuff here
  }

  @override
  Future<void> draw() async {
    // TODO: do drawing stuff here
  }
}

Get Involved

If you create anything cool, be sure to post it to Twitter and tag @SuprDeclarative and @FlutterDev!

If you need something implemented, or you find a bug, please checkout the Contributing Guide and then file an issue in the GitHub project.