오늘은 pub.dev에 나만의 package를 만들어서 직접 올려보도록 하겠습니다
하지만 시작전에, pub.dev를 모르는 사람이 있을수도있으니까 pub.dev에 대해서 설명하자면
pub.dev란?
pub.dev는 Dart와 Flutter 생태계에서 사용하는 공식 패키지 저장소입니다.
pub.dev에서는 Dart와 Flutter 개발자들은 자신이 만든 패키지를 공유하거나, 다른 개발자들이 만든 유용한 패키지를 다운로드하여 프로젝트에 활용할 수 있습니다.
저는 pub.dev를 활용하여 멀티 래포를 구현하기 위해 만들어봤습니다.
1. Package 생성
우선 패키지를 만드려면 기본 세팅을 해야겠죠?
만들기 전에 꼭 pub.dev에 본인이 만들고싶은 패키지와 중복되는 이름이 있는지 확인하세요.
The official repository for Dart and Flutter packages.
Pub is the package manager for the Dart programming language, containing reusable libraries & packages for Flutter and general Dart programs.
pub.dev
혹시 본인이 만약 네이티브 기술을 안쓰고 오로지 다트 언어로만 구현할것이다 하면
flutter create --template=package {패키지 이름}
네이티브 기술까지 필요한 패키지를 만들것이다 하면
flutter create --template=plugin {패키지 이름}
위의 명령어를 사용해서 프로젝트를 생성하시면 되겠습니다.
2. 패키지 기본 세팅
가장 먼저 해야할건 패키지의 라이센스를 정헤줘야하는데요.
제가 보편적으로 많이 사용하는 라이센스는
1. Apache License 2.0
2. MIT License
이 두가지를 많이 사용하는데
사실 라이센스는 그렇게 중요한게 아니기 때문에 넘어가도록 하겠습니다.
라이센스를 정했으면 정한 라이센스를 직접 패키지에 사용해야겠죠.
제가 생각하는 가장 쉬운 방법은 깃허브로 설정하는것입니다.
우선 레포지토리를 만들기를 누르면
이런식으로 라이센스를 정할 수 있을텐데, 여기서
이런식으로 본인이 원하는 라이센스를 정하고 생성한 다음
아까 만든 패키지에 깃허브를 연결해서 pull을 받으면 자동으로 생성이 됍니다
그리고 "homepage" 혹은 "repository" 필드 둘중 하나를 pubspec.yaml파일에 넣어야하는데
homepage는 간단히 본인의 웹사이트나 출시한 앱의 playstore 혹은 appstore에 있는 url을 올려도 상관 없습니다.
repository에서는 본인의 작업중인 github의 링크를 넣으면 됩니다.
name: flooding_app_design_system
description: "flooding_app에서 사용할 design_system."
version: 1.0.2
repository: https://github.com/flooding-kr/flooding-app-designSystemLibrary
이런식으로 하시면 기본적인 준비는 끝났습니다.
https://iloveuhyeon.tistory.com/13
[Flutter] pub.dev에 나만의 package를 만들고 올리기 #2
시작하기에 앞서https://iloveuhyeon.tistory.com/12 [Flutter] pub.dev에 나만의 package를 만들고 올리기 #1오늘은 pub.dev에 나만의 package를 만들어서 직접 올려보도록 하겠습니다하지만 시작전에, pub.dev를 모르
iloveuhyeon.tistory.com
'Flutter' 카테고리의 다른 글
[Flutter] 크로스 플랫폼 (1) | 2025.04.01 |
---|---|
[Flutter] pub.dev에 나만의 package를 만들고 올리기 #2 (1) | 2025.03.24 |
[Flutter] Flutter 프로젝트에 .env 적용하기 (0) | 2024.07.25 |
[Flutter] Github Action에서 Github Secrets로 .env파일 만들기 (0) | 2024.07.24 |
[Flutter] List.generate (List위젯) (2) | 2024.07.23 |