17 ms·
Graphical User Interface Using Flutter in Embedded Systems [pdf]
- zachruss92 6y agoI think as Flutter matures it will change the game for native development. I'm building an app now for a well known startup and are converting their native codebases to Flutter. What is interesting is that I was able to compile the app to web with no extra work and now use that as an easy way to demo things to my client. From a cross-platform perspective that changes the game for me along with being able to build desktop apps easily and relatively efficiently (compared to Electron).
- rajeevk 6y agoI see this on dark.dev for web "Warning: While in development, web support is available in the beta channel" What is your experience? Is it OK to use this is in production app. Right now I need a web and desktop app and curious to know if Flutter can be used. But I see the Flutter web is beta quality and Flutter desktop is alpha quality as of now
- alex_reg 6y agoFlutter Web does it's own rendering via canvas, so accessibility is off the table for now and there is no easy path to get there. That alone should kill it for most production use unless it's an internal tool. ("should" because many apps sadly just don't care) edit: I was wrong, see below. Glad to be wrong actually, because Flutter is great.
- mhoad 6y agoThat isn’t true and hasn’t been for a while. It’s nowhere near “web native” still but it is yet to even get a non beta release so I will give it some slack. But I think Flutter is probably the best hope out there right now for the ever elusive dream of write once and run anywhere with native performance.
- discreteevent 6y agoApparently this is not true. It does support accessibility. https://news.ycombinator.com/item?id=24922849 https://news.ycombinator.com/item?id=24922849
- pjmlp 6y agoWhen it provides a Delphi RAD tooling experience maybe. And just like Delphi, it will suffer that although Dart is a general purpose language, its only reason for existence will be Flutter applications.
- ZeroCool2u 6y agoGreat presentation. Also, really not surprising at all. Anyone that has tried getting a sample Flutter app running on a desktop will quickly find that it's shockingly easy and on almost all platforms will "just work" despite being in Alpha. The development experience in Flutter is great too. Anything that can help with that when developing for embedded systems is likely very tempting. I am curious why they went with Weston as their Wayland compositor as opposed to Mutter, if only because it seems to be the most popular due to Gnome. I'm not familiar enough with the trade-offs between the two. Anyone care to theorize why?
- sho_hn 6y agoWeston has better support for some things embedded developers care about, e.g. fallback codepaths for multi-plane buffer formats doing the blend in a shader, support for certain deprecated protocols (e.g. ivi-shell) and partial support for using hardware overlay planes for power-conscious compositing. It also doesn't have any of the Gnome dependencies. These are blanket statements; the devil is very often deep in the details. Depending on the OEM you work for and how vertically integrated your organization is, you may also have a large and complex supply chain catering towards your products, with complicated RASIC matrices for who supplies you want and vendors held to KPIs for their BSP and their hardware. Due to various factors Weston may be what they already have patches in hand for, e.g. for proprietary buffer integration, etc. (I work on KDE Plasma, including its Wayland support, and am a system architect for a large automotive OEM making Wayland-based infotainment systems, neither of which use Weston however.)
- ZeroCool2u 6y agoThat makes a lot of sense, thanks for the insight!
- fmntf 6y agoIs the IVI shell deprecated? I work in the automotive and that's what we are currently using.
- DonnyV 6y agoI wouldn't say its shockingly easy to get a desktop app running. Its buried under a tag and sometimes doesn't compile on Windows. Unless something recently has changed.
- phendrenad2 6y agoI love this - Flutter seems like the ideal (for embedded UIs, like automobiles and household appliances). The rich UI capability of a web-based platform without running an actual browser. As far as I can tell, the only major dependency is Dart.
- offtop5 6y agoDart is easily my favorite programing language. It's the best parts of C# plus real dynamics. The Flutter ecosystem is already above and ahead of React Native , a big part of it is it doesn't have the baggage of npm, Babel and JavaScript. For a friend's side project I've been using Flutter Web and I couldn't be happier with it
- manuelaljibes 6y agoNot to mention that it's actually cross-platform, you don't have to deal with random quirks as shadow*/elevation in RN
- yagodragon 6y agoCouldn't agree more. For me Dart is basically a better version of js + java. Flutter is also the greatest GUI framework right now and their tooling is excellent. Every time i'm working on a flutter project i feel at home because i can be sure everything is gonna work out of the box. I only care about my code and nothing more.
- jimbob45 6y agoAgreed. I’ve wondered why it hasn’t caught on. Implicit interfaces for every declared class is a genius idea.
- mixmastamyk 6y agoAnyone know of a dart library for bittorrent? I've been looking for one but haven't found one yet.
- malkia 6y agoI don't know really, but you can search it on pub.dev - https://pub.dev/packages?q=torrent https://pub.dev/packages?q=torrent
- ZeroCool2u 6y agoAbsolutely. Sound null safety is very exciting too! Using Dart/Flutter client side with sound null safety and then a few backend API's in Rust, would likely prove to be an extremely reliable system.
- moralsupply 6y agoSony knows that XORG is dead...
- shmerl 6y agoToo bad Android diverged too far from the rest of the Linux world and isn't using Wayland.
- sho_hn 6y agoInterestingly, Wayland is used to some extent in Chrome OS, including for bringing Android apps into the windowing system. See e.g. https://qiangbo-workspace.oss-cn-shanghai.aliyuncs.com/2019-09-10-chromeos-with-android-app/Arcpp_Graphics.pdf https://qiangbo-workspace.oss-cn-shanghai.aliyuncs.com/2019-... The implementation includes some interesting projects like Sommelier, a Wayland protocol proxy used as part of a setup to virtualize host resources safely: https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/sommelier/ https://chromium.googlesource.com/chromiumos/platform2/+/HEA...
- shmerl 6y agoYeah, I've seen that. I wish Android would close that gap and switch to standard Linux stack.
- AnIdiotOnTheNet 6y agoThere's a reason it doesn't use the standard Linux stack: the standard Linux stack is a garbage fire. Throwing away the userspace of Linux Desktop and replacing it is what allowed Android to thrive.
- shmerl 6y agoThere is no reason today, besides historic ones.
- mixmastamyk 6y agoWhat is it using?
- shmerl 6y ago
- hcal 6y agoSo far I've only been able to find Flutter on Linux with ARM cpus as an initial proof of concept project someone did specifically on a raspberry pi. Is there now an official path for full Linux flutter support on ARM? I'm learning Flutter now and would love to start writing some useful apps for my Pinephone and Pinebook. On an x86 Linux desktop, Flutter apps can run pretty well and very fast. I hope that holds true on embedded/mobile.
- mhoad 6y agoThere is indeed an official path for full linux support or at least in the sense that is outlined here https://medium.com/flutter/announcing-flutter-linux-alpha-with-canonical-19eb824590a9 https://medium.com/flutter/announcing-flutter-linux-alpha-wi...
- newbie578 6y agoFlutter is awesome! I truly believe it is a game changer for startups pushing an MVP as fast as possible. One codebase to build apps on iOS, Android and for the web (as soon as they improve the web one to the release version) is great, and Flutter is fun to use. The drawback could be the many states of management... But that is not a deal breaker
- haarts 6y agoThe state management is THE headache of Flutter IMO. There are many options now and I expect Google is following this development closely. Sooner or later they'll either endorse a solution or come up with something better.
- mekkkkkk 6y agoThey have endorsed solutions, but as it's still quite new it's a moving target. Originally they pushed for BLoCs, and now I think Provider is the preferred state management solution. There will probably be another one soon. At the end of the day they all work, but with different pros and cons. Even if it's not the fotm, I'm very happy with BLoCs for global state and not shying away from using classic stateful widgets and forwarding data between screens where intermediate states are needed. If there is something I learned from being a web dev for my entire life it's to not always jump on the latest bandwagon. It's cool when things move quickly, but you must be careful to not get motion sickness.
- rubicon33 6y agoSomewhat of an aside, since this article is about Flutter on embedded systems where React Native isn't even a consideration but... I've used both Flutter and React Native. Hands down, Flutter is the more enjoyable experience. Everything from the language, to the toolkit, to the IDE, to the final product, is just BETTER. React Native is a bloated, hacky, slow, garbage pile by comparison.
- jamil7 6y agoTook me a while to get on board with Flutter, only really started enjoying it after I gave it a few goes. Coming to Dart after Swift and Kotlin feels like a big downgrade but languages aren't that important, as you said the whole environment is so much more streamlined than Android dev. I'm using it for Android only however and keeping my existing iOS app in Swift.
- The_rationalist 6y agoOff topic but regarding language design, what are some pros about swift that Kotlin hasn't?
- infinityplus1 6y agoI think he's probability talking about not wanting to rewrite existing apps which are working fine already in Swift.
- jamil7 6y agoAh my comment wasn’t that clear. What I meant was as nice as flutter is dart felt like a downgrade after working with kotlin and swift (both of which I like a lot)
- jurip 6y agoNot the OP, but: 1. Value types 2. Tuples 3. Key paths 4. Checked exceptions (could be more powerful in Swift, but they are there, and when not used in excess they are actually pretty nice, and Swift's `try` syntax is excellent) 5. Swift's enums and `switch` feel both more straightforward and more powerful than Kotlin's sealed classes and `when` (I'm not sure about this, but I think there are situations where you get better coverage checking with Swift's pattern matching.) 6. Reified generics (I know that opinions on this vary, and it doesn't often matter, but I've been just writing some code where it's been nice to be slightly more type safe with Any values) 7. More principled null handling (Optional is just an enum, although with some extra syntactic support) 8. `if let`, `if case`, `guard let` and `guard case` allow for simpler handling of multiple values than Kotlin's `?.let` and null checks I like Kotlin being more expression oriented, but in the end I often find my Swift code to be less contorted due to the more powerful conditional constructs. GC vs ARC isn't much of an issue, both work for me.
- TheMagicHorsey 6y agoCurrently working on a product in Flutter. I can tell you, it is extremely productive and easily learned when compared to React Native for mobile applications (when you consider programmers who don't already have React web experience). For your typical computer science student it just makes more sense than Javascript (web-based) GUI systems. When you think about it, the way the Web does GUIs is pretty ass backward.
- cbsmith 6y agoI always like the notion of "it's lighter weight and has fewer dependencies... but it doesn't work right". ;-) It'll be interesting to see how much Wayland can remain lighter weight once it has accounted for all the "not working right" cases.
- deleted 6y ago[deleted]
- singhrac 6y agoI also, independently, started writing an app in Flutter for fun (no experience in mobile/desktop GUI work, several years since I've worked in front-end web). I can give a list of pros/cons that probably overlaps what you've heard: Pros: - The toolkit feels fairly mature and not too hard to parse. I think there's a lot of "this class works with defaults and breaks otherwise" feeling, though the core components are robust enough that this isn't a huge concern. - It was super easy to build for Android, iOS, and Mac all at the same time. Everything Just Worked (so far). - It was very performant - Very easy to add your own painting code if you wanted a custom component. - The debug view is so so useful for figuring out painting and layout issues. Cons: - I didn't understand Futures very well (and honestly still don't); this might be an issue with people working with modern Python/JavaScript/whatever. - Because of the above, interacting with a database / JSON on disk felt a little contrived. In particular JSON parsing felt very non-obvious, even though it feels like at this point is should be a first-class feature. - It still produced relatively fat binaries, though not sure how much of that was debug/release mode. - My computer ran hot while running Flutter, though not sure how much of that is debug/release mode. Overall I'm very very happy with it. It was the kind of project where when I had time to work on it, after work, I had a list of things I wanted to do, and I could quickly check off feature after feature instead of fighting the system. That made me add more desired features, etc., but very enjoyable.
- r_police 6y agoFutures are very similar to JS Promises. They even have similar APIs and can also be worked with the "async/await" of Flutter
- scollet 6y agoI believe that's a dart feature just for comparison to JS instead of the framework.
- realusername 6y agoI would add a few cons to the list (I agree with all the pros): - Testing can still be improved in my opinion, there's no mutation testing yet and it's still pretty verbose. If you are coming from the JS world, that's clearly superior, if you are coming from the Ruby world however, you will be disappointed a little bit on that level. - I really don't like the navigation system, it's pretty hard to know the current route and you have to go out of your way if you need to interact with the current route dynamically. - Webviews are kind-of alpha, which means no tab support, that's a killer for any kind of oauth using webviews.
- cletus 6y agoHonestly I don't get the appeal of Dart/Flutter for this use case for two major reasons: 1. Dart is garbage-collected; and 2. Dart has optional typing, which is to say it supports type hints but is essentially dynamically rather than statically typed. This presentation claims low overhead so I'm open to be proven wrong here. I wonder how much of that (if true) is Flutter and how much is Wayland (over X). I'd really like to see some nontrivial apps in this, React Native, Qt, GTK and the like. But GC isn't just about overhead (although that is a concern). It's about predictability of performance. It's about tuning the VM and the characteristics of STW GC pauses (if any).
- kettro 6y agoAn important distinction is Embedded and Real-time. Embedded is the all-encompassing tent, while Real-time is a subset thereof. Embedded includes things with GUIs, like fridges. We're not dealing with 128k of RAM. These can run basic GC'd apps just fine. Pauses really aren't any more of a concern than on desktop, or even less so.
- JoeAltmaier 6y agoMy experience is not this. I've never seen an embedded app with GC. And embedded is usually dog slow processor running at minimum clock, to save power. So pauses are 10X or more the issue re: desktop.
- black3r 6y ago> And embedded is usually dog slow processor running at minimum clock, to save power. It used to be like this for a long time, but nowadays the market is moving towards stronger embedded CPUs, either just because they are affordable (raspberry pi), or the power is actually wanted for something (e.g. nvidia jetson for video processing and AI)
- dathinab 6y agoYes I mean I just did some quick price research and I (as a private person) can buy a Quad core Cortex-A53 for just 5.20$... And a Raspbery PI Zero (no WLAN) for 12€.
- DerDangDerDang 6y agoFlutter looks great, and I seriously considered it for my next project. In the end I decided the possibility of Google getting bored and ending support was enough to tip me to using Qt Quick instead - even though I kinda dislike Qt and js, and will have to pay for it.
- beckler 6y agoWell, Flutter is open source, so even if Google dropped support (extremely unlikely), it will likely continue on.
- skratlo 6y agoIt will likely not continue
- byeager 6y agoDo you mean Google's support will likely not continue or that the project will not continue if Google pulls its support.
- filoleg 6y agoThe way I read it, it looks like OP is saying that in case Google pulls out, then it will likely not continue. And I tend to agree with this. I can foresee an initial counter-push for the first year or so after google pulls out, but then the project will die its own death. However, with Flutter specifically, I have a strong feeling that Google won't pull out. Esp given how Dart was kind of a big flop for years after the initial release, and Google still kept it around until Flutter came into existence, and then made a hard push to continue with Dart. At the moment, Dart is the best and most popular it has ever been.
- pjmlp 6y agoNot Google per se, Ad Words team rescued the project from closing down as they had a major effort to port from GWT to Dart 1.0. Ad Words is what keeps Flutter alive.
- jeffbee 6y ago“Embedded” system needs only four cores and half a gigabyte to run trivial demo app. Progress?
- slezyr 6y agoWow, I thought that was a joke.
- Memosyne 6y agoI'll be the contrarian: Is this a good business decision? Sony has recently stated that it wants to enter the automotive industry but Google is a direct competitor with Waymo and their Nest product has a pretty firm standing in the smart home appliance environment. Is it wise to basically become dependent on a large competitor for such an integral component of your next generation products? What if Google decides to give up maintenance of Flutter to the community and use an internal, better fork? I guess it's the same thing with Microsoft using Chromium to implement Edge and how we're converging towards a complete Google monopoly. I was an early adopter and proponent of Flutter but that's just not the case anymore. The ecosystem has become inundated by what you might get if you forced copulation between the JS and Android ecosystems. There's a ton of low-substance spam articles, excessive usage of libraries reminiscent of NPM-madness, and just a general obnoxious colorful-emoji-fueled atmosphere. I don't want to be misinterpreted: there are plenty of good Flutter developers and the core engineering team is certainly brilliant. But they're largely overshadowed by a community who continues to drive a good technology into being associated with bloat, poor security, and puerility.
- beckler 6y agoI think it's a side-effect of wider adoption. NPM/Node suffers the most from this. I would also argue that Rust is experiencing a little of this.
- ezconnect 6y agoSony offer solutions and experience. They have lots of experience doing that. I am sure changing the technology behind their solution will not be a problem as users don't see it at all.
- joezydeco 6y agoFellow contrarian here. Is this a good business decision? The slide deck could have just said "We don't want to pay $10/unit for a Qt license" and saved us all the time. If you have half a gig of SDRAM and a playstation-class CPU, awesome. A lot of us don't. What if Google decides to give up maintenance of Flutter to the community and use an internal, better fork? I will never touch another Google-generated embedded project again. You will get burned. Just don't do it.
- blinkingled 6y agoSo for some reason they can't just use Android as the base OS /Display Manager and use Flutter for Android so now they have to use X11 or Wayland? They may have their reasons but I skimmed over the PDF and it doesn't address why.
- izacus 6y agoBringing up Android on a platform is significantly harder than booting up a thin Linux distribution. Android is also a rather fat cow. The Android version of this would be "Android Things" which would be perfect for this use-case (and some Googles own hardware is running Flutter on Android Things), but that platform has been completely discontinued. So booting up a thin Linux until you get a Flutter canvas just makes way more sense.
- blinkingled 6y agoI think for extremely limited capability embedded devices it makes sense to have Linux kernel + Wayland - but anything modernly new Android will do fine. Honda uses it in their in-dash entertainment systems for example.
- izacus 6y agoWhat do you gain with Android on a small device (that's not a computer screen like a head unit) though? You just add a significant maintenance burden because you need to tear out all the phone parts from the OS which make updating and patching it really hard.
- blinkingled 6y agoIn Sony's case aren't they talking about a device with screen though? The screenshots show a screen with launcher and app icons.
- nsm 6y agoWhat is the advantage of this over the more popular embedded solution which is AFAICT Qt? It was quickly glossed over in the slides without any explanation. I guess one is Dart is a safer language than C++.
- pengaru 6y agoWe need source for that GTK+ example used to imply GTK+ is broken on Wayland. It could very well be PEBKAC, client-side decorations make being coordinate system aware much more important. If your code assumes everything's in drawable coordinates, it'll work in a top-level window on X11, but may break when Wayland w/CSD shifts things. That slide is potentially quite damaging to GTK+'s reputation, to not even provide a way for us to independently verify the results is frustrating.
- mahkoh 6y agoGTK doesn't need Sony to damage their reputation. Trying to force CSD on everyone is damaging enough.
- izacus 6y agoOne of the main bonuses of Flutter is also its underlying design - it really just needs a Canvas to render to and not much else. This makes it easy to port to other platforms (even web) and it allows you to have a very lightweight embedded system running a builtin app. This makes debugging easier as well, since you can just write the app on desktop, test in emulators and then deploy. Our experience matches Sonys in that it works very well for embedded devices.
- c-smile 6y agoIf Canvas means pixmap/bitmap (2D array of pixels) then unfortunately that's not enough in modern world. On high-dpi monitors you must use GPU to offload rasterization of drawing primitives from CPU to GPU. Otherwise the only job your will do is drawing at 100% load - say "hi" to batteries and other apps on the desktop. That's why I am supporting in Sciter as plain pixmap targets as GPU based ones: Direct2D/DirectX, Skia/OpenGL/Vulkan + the ones used by OS -CoreGraphics and Cairo.
- diskzero 6y agoFlutter has a Skia-based backend with GPU acceleration. A bitmap/pixmap solution would be the worst-case scenario and probably only occur on an esoteric platform where GPU support is absent.
- chinmaygarde 6y agoYou're right but that is not how Flutter works. Flutter supports rendering using multiple client rendering APIs (OpenGL, Metal, Vulkan) and the embedder gets to pick one. Based on that decision, the embedder then has to handle WSI to provide the Flutter Engine a render target. In the case of OpenGL, it is a framebuffer object that passes all completeness checks. The engine will render directly to it. This way, the framebuffer backing stores are completely under the control of the embedder and the engine does not have to do unnecessary render to texture passes. The engine will never allocate an array of pixels in host memory when a GPU backend is selected. As you said, that would be slow and inefficient. We typically go to great lengths to minimize the device (and host) allocations and render target switches when rendering. Disclosure: I am one of the authors of the Flutter Embedder API.
- stefan_ 6y agoNot sure why they are even still using Wayland; if all you want to do is display a full-screen EGL surface, you are better off just talking to libEGL and the kernel atomic DRM yourself.
- anderspitman 6y agoI really enjoyed writing flutter code when I played with it. Google seems to be backing it strongly and they have lots of great learning videos. If it ever gets a strong set of cross-platform libraries for doing things like file system access, it's going to be huge. But I'm not even sure that's possible with how locked down the mobile OSes are these days.
- hapless 6y agoLiving proof there's at least one (1) flutter user outside Google
- mhoad 6y agoIt was literally the fourth most desired framework in the 2020 StackOverflow developer survey and was third the year before. https://insights.stackoverflow.com/survey/2020 https://insights.stackoverflow.com/survey/2020
- Const-me 6y agoEmbedded doesn’t need wayland nor X.org. These two things implement desktop managers. Why would you run a desktop manager on a computer that runs one program only? For embedded, drm/kms is IMO better level of abstraction to base on. It only takes couple pages of code to get yourself a full-screen DRM-backed EGL context. I did it a few times for various Linuxes using Broadcom and Mali GPUs. I’ve evaluated Flutter couple years back, chose not to. I picked NanoVG (later on I’ve patched it a bit improving fonts https://github.com/Const-me/nanovg https://github.com/Const-me/nanovg ), compiled a shared library, consumed from .NET Core, and implemented a GUI in C#, with animated transitions and such. Both me and my client were happy with the outcome. Here’s why I was reluctant to choose Flutter. 1. New programming language with Flutter being the only use case. The language looks nice by itself. However, this means no library ecosystem, and non-trivial chances to waste lots of time working around bugs in language, compiler and runtime. 2. I don’t like Skia underneath, too much legacy and overall CPU-centric design. Marketing materials tells how they using GL and Vulkan for performance. Source code tells opposite story, they’re doing a lot of graphics on CPU. Unless the stuff is already implemented by some knowledgeable people outside ad. tech, e.g. MS Direct2D or nVidia’s NV_path_rendering. To be fair, Skia appears to be able to consume either of them, but none was available for my Linux target.
- emersion 6y ago>Embedded doesn’t need wayland nor X.org It depends. In this particular case, the demo seems to contain a launcher which allows to start multiple apps and switch between them. A window manager sounds preferable in this case. Also, Flutter handles all of the Wayland/X11 implementation details. In this case it's less work to just use the already-existing backend.
- Const-me 6y ago> the demo seems to contain a launcher which allows to start multiple apps and switch between them. If the count of apps is small, and all of them are written by you, it's not terribly complicated to pass exclusive access to display across processes. Only becomes too complicated if you want many apps updating their windows at the same time, or support third-party apps. > it's less work to just use the already-existing backend. Short term, yes. Short term, a desktop OS and Electron is even less work. Long term, desktop environments are huge, and you'll be dealing with long tail of issues related to their features. Each time they break something, you might need to pay hundreds of dollars just to ship the equipment to you for repairs and back. When a desktop environment is physically missing from the system, along with all related GUI software, services, and libraries, it leaves much less things to break. Users can connect a USB/BT keyboard or mouse, no one gonna handle the events. They can do rude multitouch gestures on the touch screen, nothing unexpected gonna happen either.
- marta_morena_28 6y agoFlutter, or in other words: Will Google abandon this product before or after my company managed to migrate to it?
- andrewmd5 6y agoWe were early adopters of Flutter at Rainway[1] and absolutely love it. We even recently ported it to Apple TV. 1: https://rainway.com/blog/2019/08/06/flutter/ https://rainway.com/blog/2019/08/06/flutter/
- louiechristie 6y agoI'm surprised React Native didn't get a mention on page 9? React Native works on Sony PS4 using youi.tv: https://www.youi.tv/build-for-ps4-using-react-native-and-you-i-engine-one/ https://www.youi.tv/build-for-ps4-using-react-native-and-you... React Native works on Ubuntu: https://github.com/CanonicalLtd/react-native https://github.com/CanonicalLtd/react-native React Native works on Linux via Electron https://dev.to/evanbacon/making-desktop-apps-with-electron-react-native-and-expo-5e36 https://dev.to/evanbacon/making-desktop-apps-with-electron-r... Not strictly speaking aimed at embedded systems but you'd think React Native would deserve at least a consideration?
- ledak 6y agoAlso, the new Xbox store written in React Native: https://twitter.com/reactnativemsft/status/1290340391967956993 https://twitter.com/reactnativemsft/status/12903403919679569...
- ludwigvan 6y agoCorrected headline: An employee at Sony says Flutter and Wayland is the best practice in embedded systems using Linux.
- srameshc 6y agoI have used React Native and now using Flutter. It's a bit of learning again , but I am not going back to RN since Flutter is far better.
- amelius 6y agoBut how hard is it to port Dart to a new architecture?
- c-smile 6y agoJust in case, I've published yesterday demo build of Sciter.JS that also has binaries for Raspberry Pi (ARM32). See: https://github.com/c-smile/sciter-js-sdk https://github.com/c-smile/sciter-js-sdk (screenshots are there too) Some stats: Binary size : 3.7 Mb (RPI version) HTML: HTML5 level of markup language + "HTML Window" extensions, see: https://sciter.com/html-window/ https://sciter.com/html-window/ CSS 2.1 + selected modules of CSS3, see: https://sciter.com/docs/content/css/cssmap.html https://sciter.com/docs/content/css/cssmap.html JavaScript: full ES6 specification + extras like built-in JSX, see: https://github.com/c-smile/quickjspp https://github.com/c-smile/quickjspp Again, Sciter.JS uses time proven and well known technologies in a fraction of size.
- monocasa 6y ago> Raspberry Pi (AMD32) Arm32
- c-smile 6y agoYeah, fixed, thanks.
- alex_reg 6y agoSadly the recent Kickstarter [1] failed. Does that mean open-sourcing Sciter is off the table for now? [1] https://www.kickstarter.com/projects/c-smile/open-source-sciter-engine https://www.kickstarter.com/projects/c-smile/open-source-sci...
- c-smile 6y ago> Does that mean open-sourcing Sciter is off the table for now Let's put it this way: I am still looking for options.
- api 6y agoDoes Flutter support accessibility extensions on popular platforms? This question is usually the end of my evaluation of most UI toolkits for serious professional work.
- sebe 6y ago"Flutter is committed to supporting developers in making their apps more accessible, and includes first-class framework support for accessibility in addition to that provided by the underlying operating system, including: Large fonts Render text widgets with user-specified font sizes Screen readers Communicate spoken feedback about UI contents Sufficient contrast Render widgets with colors that have sufficient contrast" via https://flutter.dev/docs/development/accessibility-and-localization/accessibility https://flutter.dev/docs/development/accessibility-and-local...
- throw_m239339 6y agoGenuine question, why is GUI development so hard?
- BlahGod420 6y agoAll the developers want to be different, while all the end users need it to be the same.
- Kilonzus 6y agoIs there a link to his actual talk?
- coob 6y agoAny of the old iPod Linux guys still working at Sony on this?