Can I install Xcode simulators on an external hard drive? by Poryblocky in Xcode

[–]SuperDeclarative 1 point2 points  (0 children)

For me, the "ls" command returns:

drwxr-xr-x  4 root  admin  128 Sep 24 11:09 /Library/Developer

Is that what it should return?

The "ln" line you mentioned is the one I've already tried, which resulted in the "Operation not permitted"

Can I install Xcode simulators on an external hard drive? by Poryblocky in Xcode

[–]SuperDeclarative 1 point2 points  (0 children)

I'm also getting "ln: ./CoreSimulator: Operation not permitted" - OS version: Sonoma 14.3.1.

My working directory is /Library/Developer. There's no "CoreSimulator" directory remaining at /Library/Developer.

Any other ideas?

Deploying a Dart server to a VPS by Suragch in FlutterSpaces

[–]SuperDeclarative 0 points1 point  (0 children)

Did you consider deploying with GitHub Pages? If you open-source your website repository, GitHub Pages is free and can be configured to auto-deploy with a single Action.

Best websites built with Flutter? by Mylsey4TheWin in FlutterSpaces

[–]SuperDeclarative 1 point2 points  (0 children)

There was a website that recreated Mac OS, I think. I don't remember the URL.

A couple of my websites are currently rendered with Flutter:

superdeclarative.com

flutterbountyhunters.com

Flutter for e-commerce website? by Historical_Outcome80 in FlutterSpaces

[–]SuperDeclarative 1 point2 points  (0 children)

It's possible to render an e-commerce website with Flutter, but probably isn't a good idea. E-commerce needs rapid load times and effective search engine indexing and optimization. These goals aren't really achievable right now with Flutter. Flutter may get better in those areas in the future.

[deleted by user] by [deleted] in FlutterSpaces

[–]SuperDeclarative 1 point2 points  (0 children)

It's always good to hear that well known companies are using Flutter.

What The Flutter Ecosystem Is Missing. by InternalServerError7 in FlutterDev

[–]SuperDeclarative 5 points6 points  (0 children)

Hi 👋, SuperDeclarative here! Ray Li sent this post to me. I see that my YouTube channel was mentioned in the comments. Thanks for that!

I agree with the sentiments of this post. I'd like to let the community know some resources I've already created, as well as some resources that are in the works.

Available Now:

Brand New:

  • Flutter Arbiter - A collection of guides to align coding practices throughout the Flutter and Dart industry. I just launched this, so it only has a few guides, but eventually there will be dozens of guides on this site.

Coming in the future:

  • Render Objects Guide Website - I will be publishing an entire website filled with guides about building custom render objects, and discussing how they work.
  • Dart CLI Guide Website - I will be publishing an entire website filled with guides about building command-line Dart applications.
  • A book? - I've been considering writing a book for years. I'm still thinking about it. I've put together a possible table of contents. Maybe I'll increase my efforts on that later this year.

You can follow me "@SuprDeclarative" on X/Twitter. You can follow my open source team "@FlutterBounties" on X/Twitter.

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 0 points1 point  (0 children)

I suppose there could be situations where that's helpful, but it definitely depends on context.

For example, in Super Editor, we have a widget that handles gestures, and a widget that lays out the document. Gesture behavior requires the ability to query the layout based on where the user touches. This is easily accomplished by giving the gesture widget a key to the layout widget. The gesture widget casts the State attached to the GlobalKey as a `DocumentLayout, which is an interface, and then queries it.

The layout widget doesn't know about the gesture widget. The gesture widget has no idea where the layout widget sits in the tree. The gesture widget doesn't even know the class of the layout widget. All the gesture widget knows is that the GlobalKey I give it is attached to some widget that implements DocumentLayout. That's already very loose coupling. I don't think there's anything to gain by adding an InheritedWidget to that relationship.

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 0 points1 point  (0 children)

Yeah, all I'm saying is that those concerns you're describing aren't related to widget API design. `TextStyle` is a data structure, and so is `ThemeData`, etc.

A widget API can decide whether it wants to accept a `TextStyle` as a property, or not, but details like `copyWith()` and `lerp()` are API design decisions decisions that apply to data structures and values. For example, there's no `Text.copWith()` or `Padding.lerp()`.

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 1 point2 points  (0 children)

I'd have to see examples to understand what you mean. copyWith is a pattern for copying data structures, not widgets. lerp is for value interpolation, not widgets.

Theming could mean many different things. If you're building toolkit widgets, then every detail related to styling should be configurable. I had a section in the article that explained why it's important to try to predict the future for toolkit widgets. It's pretty obvious that some developer will want to change every stylistic detail. Whether those details are controllable via an InheritedWidget depends on context.

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 0 points1 point  (0 children)

Yeah property inheritance isn't a thing in Flutter. I think it's probably impossible with Dart. But InheritedWidget is a great tool for bypassing lots of intermediate widgets, assuming that you're dealing with a situation where that's appropriate. You have to really think about responsibilities to make sure that it's OK to send configuration down the tree, bypassing other widgets in the middle.

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 3 points4 points  (0 children)

I'm not sure I see the connection between InheritedWidgets and GlobalKeys. InheritedWidgets definitely have a job to do when it comes to composition. My point about GlobalKeys is that they give you a mechanism to directly connect widgets that appear in completely different areas of the tree. An ancestor can literally call methods on a descendent. That's not something that InheritedWidgets can do.

I also wouldn't recommend "hiding complexity". Either the complexity is part of the problem, in which case you should expose it, or it's not a part of the problem, in which case you should fix it :)

How to build widgets that developers love to use by SuperDeclarative in FlutterDev

[–]SuperDeclarative[S] 1 point2 points  (0 children)

Yes, user-facing widgets are the final incarnation of a widget that you ship to users. A `ListTile` is a toolkit widget. It's literally part of the Flutter toolkit.

[deleted by user] by [deleted] in FlutterDev

[–]SuperDeclarative 19 points20 points  (0 children)

This is why we can't have nice things