본문 바로가기

프로그래밍 언어/flutter

플러터(Flutter) 필수 라이브러리

개요

플러터로 앱을 개발할 때 필요한 필수라이브러리를 소개합니다.

소개하는 20개의 라이브러리는 개발자가 가장 선호하고 유요하게 사용될 수 있는 20개의 라이브러리입니다.

필수라이브러리

1. Google map

https://pub.dev/packages/google_maps_flutter

 

google_maps_flutter | Flutter Package

A Flutter plugin for integrating Google Maps in iOS and Android applications.

pub.dev

2. url_launcher

웹브라우저에 대힌 URL 실행을 지원하는 라이브러리로, 전화 통화, SMS, 이메일 등과 같은 기본 스키마 URL 실행도 지원합니다.

https://pub.dev/packages/url_launcher

 

url_launcher | Flutter Package

Flutter plugin for launching a URL. Supports web, phone, SMS, and email schemes.

pub.dev

3. Firebase packages (FlutterFire)

플러터에서 Firevase를 지원하는 라이브러리입니다.

자세한 내용은 아래 공식사이트에서 확인할 수 있습니다.

https://firebase.flutter.dev/

 

FlutterFire | FlutterFire

The official Firebase plugins for Flutter

firebase.flutter.dev

4. Provider

상태관리를 위한 플러터 라이브러리입니다. 

프로바이더는 필요한 페이지에서 접근하는 데이터 모델을 제공합니다. 

https://pub.dev/packages/provider

 

provider | Flutter Package

A wrapper around InheritedWidget to make them easier to use and more reusable.

pub.dev

5. Bloc

프로바이더와 비슷한 상태관리 라이브러리입니다. 

Bloc(Business Logic Component) 디자인 패턴을 이용합니다. 

https://pub.dev/packages/flutter_bloc

 

flutter_bloc | Flutter Package

Flutter Widgets that make it easy to implement the BLoC (Business Logic Component) design pattern. Built to be used with the bloc state management package.

pub.dev

6. Getx

이 라이브러리도 상태관리 라이브러리입니다.

GetX는 상태관리, 종속성 주입, 경로 관리 솔루션을 제공합니다.

https://pub.dev/packages/get

 

get | Flutter Package

Open screens/snackbars/dialogs without context, manage states and inject dependencies easily with GetX.

pub.dev

7. ReduX

Redux의 플러터 버전 라이브러리입니다. 

https://pub.dev/packages/redux

 

redux | Dart Package

Redux is a predictable state container for Dart and Flutter apps

pub.dev

8. Rxdart

RxDart는 ReactiveX를 기반으로 하는 Dart 언어용 반응형 함수형 프로그래밍 라이브러리입니다.

https://pub.dev/packages/rxdart

 

rxdart | Dart Package

RxDart is an implementation of the popular reactiveX api for asynchronous programming, leveraging the native Dart Streams api.

pub.dev

9. Location

위치가 변경될 때 콜백을 받을 수 있는 라이브러리입니다. 

지도에서 애플리케이션을 쉽게 관리할 수 있고 현재 위치가 필요한 기타 사용을 관리할 수 있으며 사용자 위치가 변경되면 앱이 함수를 반복해서 호출하지 않고 실시간으로 업데이트합니다.

https://pub.dev/packages/location

 

location | Flutter Package

A Flutter plugin to easily handle realtime location in iOS and Android. Provides settings for optimizing performance or battery.

pub.dev

10. Device_info

Flutter 응용 프로그램 내에서 현재 디바이스 정보를 제공하는 라이브러리입니다. 

https://pub.dev/packages/device_info

 

device_info | Flutter Package

Flutter plugin providing detailed information about the device (make, model, etc.), and Android or iOS version the app is running on.

pub.dev

11. Sqflite

Sqlite와 비슷한 로컬 데이터베이스 저장소를 제공하는 라이브러리입니다.

https://pub.dev/packages/sqflite

 

sqflite | Flutter Package

Flutter plugin for SQLite, a self-contained, high-reliability, embedded, SQL database engine.

pub.dev

12. Cached network image

인터넷의 이미지를 표시하고 캐시 디렉토리에 저장하는 플러터 라이브러리입니다.

이미지를 캐싱하므로 시간과 데이터를 절약할 수 있습니다. 

https://pub.dev/packages/cached_network_image

 

cached_network_image | Flutter Package

Flutter library to load and cache network images. Can also be used with placeholder and error widgets.

pub.dev

13. SharedPreferences

Shared Preferences는 많은 코드 구조나 테이블 생성 없이 데이터 키-값 쌍을 로컬에 저장하는 데 사용되는 라이브러리입니다. 

https://pub.dev/packages/shared_preferences

 

shared_preferences | Flutter Package

Flutter plugin for reading and writing simple key-value pairs. Wraps NSUserDefaults on iOS and SharedPreferences on Android.

pub.dev

14. Intl

이 패키지는 메시지 번역, 복수형 및 성별, 날짜/숫자 형식 지정 및 구문 분석, 양방향 텍스트를 포함한 국제화 및 현지화 기능을 제공합니다.

https://pub.dev/packages/intl

 

intl | Dart Package

Contains code to deal with internationalized/localized messages, date and number formatting and parsing, bi-directional text, and other internationalization issues.

pub.dev

15. Path provider

파일 시스템에서 일반적으로 사용되는 위치를 찾기 위한 Flutter 플러그인입니다. iOS, Android, Linux 및 macOS를 지원합니다. 

https://pub.dev/packages/path_provider

 

path_provider | Flutter Package

Flutter plugin for getting commonly used locations on host platform file systems, such as the temp and app data directories.

pub.dev

16. Google fonts

Flutter용 google_fonts 패키지를 사용하면 Flutter 앱에서 fonts.google.com의 977개 폰트를 쉽게 사용할 수 있습니다.

https://pub.dev/packages/google_fonts

 

google_fonts | Flutter Package

A package to include fonts from fonts.google.com in your Flutter app.

pub.dev

17. charts_flutter

이 플러그인은 막대 차트, 선형 차트, 원형 차트 등과 같은 플러터 프로젝트에서 다양한 유형의 차트 구조를 제공합니다.

https://pub.dev/packages/charts_flutter

 

charts_flutter | Flutter Package

Material Design charting library for flutter.

pub.dev

18. Package info

iOS의 CFBundleVersion 또는 Android의 versionCode와 같은 애플리케이션 패키지에 대한 정보를 쿼리하기 위한 Flutter 플러그인입니다.

기기(제조업체, 모델 등) 및 앱이 실행 중인 Android 또는 iOS 버전에 대한 자세한 정보를 제공합니다. 

https://pub.dev/packages/package_info

 

package_info | Flutter Package

Flutter plugin for querying information about the application package, such as CFBundleVersion on iOS or versionCode on Android.

pub.dev

19. Share

Android의 ACTION_SEND 인텐트와 iOS의 UIActivityViewController를 사용하여 플랫폼 공유 UI를 통해 콘텐츠를 공유하기 위한 Flutter 플러그인입니다.

https://pub.dev/packages/share

 

share | Flutter Package

Flutter plugin for sharing content via the platform share UI, using the ACTION_SEND intent on Android and UIActivityViewController on iOS.

pub.dev

20. Dio

dio 플러그인은 인터셉터, FormData, 요청 취소, 파일 다운로드, 타임아웃 등을 지원하는 강력한 Dart용 HTTP 클라이언트입니다.

https://pub.dev/packages/dio

 

dio | Dart Package

A powerful Http client for Dart, which supports Interceptors, FormData, Request Cancellation, File Downloading, Timeout etc.

pub.dev