Hidden Gems in My Flutter Toolbox

When developing Flutter apps, most people rely on the big names: Provider, Riverpod, Dio, and so on. But over time, I’ve found myself repeatedly reaching for a different set of tools—ones that don’t always make it to mainstream lists but punch far above their weight in daily utility. These are the unsung heroes of my Flutter stack: packages and tools that quietly power code generation, image processing, UI construction, and even full web rendering. Here's a breakdown of the hidden gems I find myself using more often than I ever anticipated.


1. recase: String Transformation Made Simple

pub.dev/packages/recase

Whether I'm generating code, API clients, or any form of boilerplate, I often need to convert strings between formats like camelCase, snake_case, PascalCase, etc. recase makes this trivial. It’s particularly invaluable in tooling scripts and build runners where consistency in naming conventions matters.


2. image: Pure Dart Image Manipulation

pub.dev/packages/image

Manipulating images without relying on platform-specific APIs? Yes, please. image is a pure Dart solution that I use mainly in development tools and CLI utilities. It's too memory-hungry for runtime use in mobile apps, but perfect for things like resizing, watermarking, or converting images during asset pipeline stages.


3. jaspr: Web Development With Familiar Tools

pub.dev/packages/jaspr

Jaspr allows you to build websites using a Flutter-like framework. The best part? Minimal context switching. If you’re already fluent in Flutter, you can create web frontends without switching to HTML/CSS/JS stacks. I use it to prototype or even deploy static sites that benefit from the component-based model I know and love.


4. flutter_deck: Slide Decks with Flutter

pub.dev/packages/flutter_deck

Need to present at a conference or demo an app? flutter_deck lets you build presentation slide decks using Flutter code. This means you can leverage animations, theming, and layout skills you already have, reducing the cognitive overhead of learning a presentation tool.


5. rfw: Remote Flutter Widgets

pub.dev/packages/rfw

Flutter isn't just for apps anymore. With rfw (Remote Flutter Widgets), you can render widgets defined on a server. This is great for dynamic content updates without shipping a full app update. I use it in experiments with server-driven UI and adaptive interfaces.


6. pdf: Generating PDF with Flutter-Like Widgets

pub.dev/packages/pdf

Creating PDFs that look good and are programmatically generated can be a pain. Not with pdf. It uses a Flutter-like widget system to build PDF documents. That makes designing reports, invoices, or exportable content seamless and intuitive. And it’s free, which is astonishing given how useful it is.


7. vector_graphics_compiler: Precompile SVGs for Speed

pub.dev/packages/vector_graphics_compiler

This package helps precompile SVG assets, resulting in significantly faster load and rendering times in your app. If you're working with many vector assets, especially in animations or UIs, it’s a game changer.


8. eventified_generator: Turning Methods into Event Streams

pub.dev/packages/eventified_generator

I use this small but clever package for analytics and event tracking. It converts method calls into streams of events, which I can then process or batch. It's a neat abstraction for decoupling instrumentation logic from core functionality.


9. smooth_sheets: The Best Modal Sheets

pub.dev/packages/smooth_sheets

Modal sheets can be tricky. smooth_sheets offers a highly customizable and smooth bottom sheet experience, supporting various use cases with minimal boilerplate. It quickly became my go-to for creating polished, flexible modals.


10. crimson: JSON Parsing at Speed

pub.dev/packages/crimson

Sometimes, you’re stuck with bloated or inconsistent API responses. crimson is a blazing-fast JSON deserializer that shines in these scenarios. When performance is critical or the input data is unnecessarily verbose, this tool helps avoid bottlenecks.


Bonus Tools

resvg: High-Quality SVG Rendering with Skia

When you need pixel-perfect SVG rendering, especially outside of a Flutter runtime (e.g., server-side or native tools), resvg is incredibly reliable. I use it to convert SVGs to raster images for tooling and asset pipelines.

PocketBase: Your Customizable Go-Backed Backend

pocketbase.io

Need a lightweight, self-hostable backend? PocketBase is built in Go and offers authentication, file storage, real-time DB and more. It’s extremely easy to set up and tailor to specific use cases, making it ideal for Flutter apps in need of quick backend scaffolding.


widgetbook: UI Component Cataloging and Testing

pub.dev/packages/widgetbook

widgetbook is like Storybook for Flutter. It helps you catalog, view, and test your widgets in isolation, making UI development and QA much easier. I use it when working on component libraries or when a project has a large, reusable UI component set. It improves visibility and feedback loops, especially in team environments.

Final Thoughts

These tools might not get the spotlight often, but they have repeatedly proven their worth in my development workflow. Whether I’m generating code, building presentations, or improving performance, they offer practical, elegant solutions that help me stay productive.

Try a few of them out—you might be surprised at how indispensable they become.

Next
Next

How to Install a Local LLM on macOS in 10 Minutes (and use it in NeoVim)