DEV Community

Cover image for 5 tools to supercharge your Flutter development
Ivan Huerta for Parabeac

Posted on

5 tools to supercharge your Flutter development

If you've read my previous posts, you probably know I'm addicted to getting things done quickly. At the time of me writing this, I'm preparing to mentor a hackathon that's being hosted online out of El Paso, TX. So I quickly wanted to put together a couple of tools & packages that can help new Flutter developers get going & hopefully create an MVP within a hackathon's time period.

VSCode

This is the premier IDE from Microsoft & has gotten a lot of traction across the global developer community for creating plugins. You can download VSCode here & I recommend installing the plugins for Flutter & Dart. Alternatively, you can use Android Studio, but in our opinion, VSCode is just much lighter & friendlier to use.

Firebase

Firebase is a tool where you can create a backend & database. You can manually populate data which is nice for getting some test data in on the backend. You can use the Firebase Flutter package to integrate your mobile app with your Firebase. Although I'm not the biggest fan of the way this package works, it gets the job done for a Minimum Viable Product.

HTTP Package

For applications that need to talk to an API, the HTTP package is an excellent package to use for talking to API endpoints. Below is a snippet of how simple a POST request is.

import 'package:http/http.dart' as http;
var url = 'https://example.com/whatsit/create';
var response = await http.post(url, body: {'name': 'doodle'});
Enter fullscreen mode Exit fullscreen mode

JSON_Serializable

This is a more advanced tool but extremely useful. Often times when receiving & sending JSON data, you likely want to convert the data into dart object(s). Most of the time this requires additional time and boilerplate code to complete. This is where Serializing comes in. In this context, Deserializing just means converting the JSON objects into a format that allows your dart code to interact directly with these objects through dart rather than JSON or maps. Why spend additional time to map classes into a format that could be sent & received across the network when json_serilizable can do it automatically. Additionally, doing it by hand increases the risk of creating bugs in the objects that are serialized. This dart package allows the serializable classes by putting dart annotations into the classes that are going to be serialized and running pub run build_runner.

Parabeac

Parabeac High-Level Animation

Ok, ok. I might be a little biased here, but we made this tool because we wanted to produce apps faster for ourselves. With Parabeac you can convert design files from Sketch (as of this writing) & soon Figma directly into Flutter code. Just follow the README & you'll be on your way.

Thanks for reading. Hopefully, this will be a resource for you to get your MVP up and running in no time. Or at least in less time. What are your favorite tools for developing Flutter applications?

Top comments (9)

Collapse
 
pablonax profile image
Pablo Discobar

If you are interested in this, you can also look at my article about Flutter templates. I made it easier for you and compared the free and paid Flutter templates. I'm sure you'll find something useful there, too. - dev.to/pablonax/free-vs-paid-flutt...

Collapse
 
tonjohn profile image
Burton

Is there an ETA for Figma support in Parabeac?

Collapse
 
siliconivan profile image
Ivan Huerta

Yeah! ETA is about 3-4 weeks. It's one of the biggest priorities right now & will be part of the next major release.

Collapse
 
tonjohn profile image
Burton

That’s awesome! Can’t wait to try it out 😊

Thread Thread
 
siliconivan profile image
Ivan Huerta

Thanks!

Collapse
 
mehdico profile image
Mehdi Mousavi • Edited

Instead of VSCode, Use Intelij Idea
Instead of HTTP Package, Use dio

Collapse
 
siliconivan profile image
Ivan Huerta

Dio seems interesting! I’ll give it a try. However I think I’ll still be staying on VSCode.😉Honestly if I had it my way I’d just switch to vim but not ideal for a beginner. Are there any particular reasons you prefer ‘Idea’ for beginners?

Collapse
 
mehdico profile image
Mehdi Mousavi • Edited

VSCode code completion is very bad, and this is the only reason I prefer IntelliJ Idea.

Thread Thread
 
siliconivan profile image
Ivan Huerta

Mmmm, Yeah there are certainly some issues with it. Thanks for sharing!