Notes by Lesnitsky Subscribe

#flutter · 2020-04-02 06:12 PM Twitter Logo

Flutter IDE: Why and when?

TL;DR:
Good news – the project is live and I'm still working on it

Bad news – timeline is stretched

Why?

First, let me explain my initial motivation. Flutter has awesome integrations with both vscode and android studio. Both offer similar functionality in terms of autocomplete, refactoring actions, jump to definition, etc. I want more: autocomplete often suggests something irrelevant, some actions are easier to do with UI (example: icons picker), other things could be automated completely (file rename is still a pain since you have to modify import paths manually). My other concern was performance.

An actual implementation of dart/flutter code intelligence is https://pub.dev/packages/analyzer package, extensions just wire things up with IDE/Editor. This was also the path I've taken – so much is already done, I just need to integrate this. I was really amazed by how much is in there until I've started to hit sharp edges... Some APIs were not very convenient to use, others were a bit slow, and finally: if I will use the same foundation I will end up building exactly the same thing. Do we need another vscode?

When?

Many of you have seen me tweeting "early march alpha release". I had a vacation in February and was hoping to deliver by the end of this I-get-paid-for-work-break, rushing through things like crazy, making bad design choices for the "I should get it done fast" sake. By March, Flide (the name of Flutter IDE which may change before an actual release) wasn't good enough in my personal opinion even for alpha release. So I made a step back and re-evaluated my priorities:

Last but not least: I do have a job. My vacation I gladly spent building Flide is over and now I have much less time for this project. If you personally, or your company is interested in this project, want to see it live earlier and have some resources to support it – please reach out to me. Thanks for reading and consider sharing this with all the flutterians interested in better Flutter tooling 💙