https://pub.dev/packages/infinity_scroll_shell
계기
추석에 뭐 하지? 뭔가 내 활동을 남기고 싶은데?라는 고민을 하다가, 개발자 첫 취직을 도왔던, 오픈소스 개발을 하나 더 해볼까?라는 생각이 들어 도전해 보았다.
과정
배포할 기능은 현업에서 내가 구현한 기능을 모듈화 하여 진행하였다.
나름 3개월 이상 문제 없이 동작해서 배포해도 된다고 판단하였다.
한번 해 봤던 과정이라 그런지 (+ 모르면 gpt 요약) 어려움 없이 3시간 만에 성공한 것 같다.
1. 프로젝트 생성
flutter create --template=package my_flutter_library
위의 명령어로 초기 템플릿을 쉽게 구현할 수 있다.
그러면 Flutter 3.24.0, dart 3.5.0 기준으로 아래와 같은 tree를 가진 파일을 생성하게 될 것이다.
├── CHANGELOG.md
├── LICENSE
├── README.md
├── analysis_options.yaml
├── lib
│ └── my_library.dart
├── my_library.iml
├── pubspec.lock
├── pubspec.yaml
└── test
└── my_library_test.dart
2. 라이브러리 구현 및 테스트 코드 작성, 그리고 exmaple
lib/my_library.dart에 모듈화진행할 코드를 추가하기만 하면 구현은 끝이다.
그리고 테스트 코드도 작성해주면 좋다.
infinity_scroll_shell에는 스크롤 방향에 따라 Fab 버튼을 활성화하는 기능이 있는데,
테스트 코드에서 해당 동작을 테스트할 수가 없어서 widget이 잘 렌더링 되었는지에 대해만 테스트 코드를 작성하였다.
(방법은 시간 날 때마다 찾고 있는 중,,,)
exmaple 코드에는 제작자(내)가 의도한 사용 방법에 대해 간단하게 코드를 추가하였다.
아직 초기 라이브러리라 프로젝트 구조를 바로 알 수 있을 것이다.
https://pub.dev/packages/infinity_scroll_shell
3. 배포 전 CHANGELOG, LICENSE 기록
CHANGELOG는 pub.dev에 올라올 내용이니 패키지 업데이트시마다 기록하게 될 것이고,
LICENSE는 MIT LICENSE로 명시하였다.
4. 배포
그다음 아래의 명령어로 배포를 시도하였고, 중간에 부족한 부분 혹은 필요한 권한은 요청하니 터미널에서 요구하는 대로 따라 하면 쉽게 할 수 있다.
❯ dart pub publish
이상으로 이번 포스트를 마치겠습니다.
감사합니다.
'flutter' 카테고리의 다른 글
Flutter - toss payment결제 페이지 webView 연동 (0) | 2024.05.09 |
---|---|
flutter Understanding constraints (0) | 2024.05.08 |
구글플레이, App Store 배포 심사 탈락 기록 (1) | 2023.12.07 |
Flutter Android 12이상에서의 defalut 스플래시 화면 처리 솔루션 (2) | 2023.12.05 |
Flutter Autocomplete 커스텀 (0) | 2023.11.21 |
댓글