SwiftUI Environment Object alternative in Flutter

I learned SwiftUI before starting to learn flutter and I could not understand how to have something that is similar to Environment object in SwiftUI?

One solution I could think of is using singletons, But I am not sure if using singletons are a good flutter architecture solution.

For example in SwiftUI you would access data like so:

struct MyView: View {
    @EnvironmentObject DataController data

    var body: some View {

And the DataController would look like this:

class DataController {
    title = "Hello!"

On the other hand in flutter if I will use singleton it will look like this:

class MyWidget extends StateLessWidget {
    Widget build(BuildContext context) {
        return Text(DataController.data.title);

And the DataController in flutter is using a singleton :

class DataController {
    static DataController data = DataController();
    title = "Hello!";

Is there a better way achieving this feature without passing arguments and values down the widget tree with provider package?

Great information thanks.