묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결반응형 UI디자인 완전 정복 with 피그마
영어 음성 지원
학습 관련 질문을 남겨주세요. 구체적일수록 좋습니다. 영상이나 이미지 캡쳐를 해주시면 더더욱 좋습니다. 질문이 구체적일 수록 저도 질문을 정확히 파악하고 적절한 답변을 드릴 수 있습니다.커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해보세요.서로 예의를 지키며 존중하는 분위기를 함께 만들어가요.반응형 디자인 강의의 영상과 직접적인 관련이 없는 질문은 가능하면 카카오 오픈 그룹챗에 올려주세요. 오픈챗 정보는 다음 링크를 확인해주세요. 저는 캐나다에 거주해서 영어에 적응하려고 영어 음성으로 듣는데 8:56초에 영어가 아닌 중국어(?)가 몇초 나와요. 앞의 몇군데도 그랬구요..
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 리뷰 부탁드립니다!
function solution(m, arr) { arr.sort((a, b) => a[0] + a[1] - (b[0] + b[1])); let answer = 0; for (let discount = 0; discount < arr.length; discount++) { //할인이 적용되는 상품 let discountPrice = arr[discount][0] / 2 + arr[discount][1]; let budget = m - discountPrice; let temp = 1; for (let undiscount = 0; undiscount < arr.length; undiscount++) { //할인이 적용된 상품은 제외 if (discount === undiscount) continue; let price = arr[undiscount][0] + arr[undiscount][1]; budget -= price; //예산을 초과하는 경우 if (budget >= 0) temp++; if (budget < 0) budget += price; } answer = Math.max(answer, temp); } return answer; }
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Querydsl 부트 3.54 설정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]build.gradle 코드 수정 자료를 보고 수정했는데 오류가 뜹니다. 제공해주신 자료의 버전과도 동일한 것은 아니라서 헷갈리는데 어떻게 해야 하나요?<build.gradle 수정한 코드>plugins { id 'java' id 'org.springframework.boot' version '3.5.4' id 'io.spring.dependency-management' version '1.1.7' } group = 'hello' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' //test 롬복 사용 testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //Querydsl 추가 implementation 'com.querydsl:querydsl-jpa:5.0.0' annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" } tasks.named('test') { useJUnitPlatform() } clean { delete file('src/main/generated') } <오류 스크린샷>추가로인텔리제이 실행 중에 가끔 플러그인 같은 것을 추가하라는 제안 문구가 나오는데 제안을 받아들이는 것이 좋나요? 아니면 우선은 그냥 무시하는게 좋나요?리프레시 하면 가끔 네트워크에 접근하는걸 허용하겠는지 노트북 자체에서 주의 문구가 뜨는데, 이건 꼭 허용해야 하나요?? 그리고 왜 뜨나요?
-
미해결비전공자도 이해할 수 있는 AWS 입문/실전
엑세스 키 사용 사례
안녕하세요!엑세스 키 관련 질문이 있습니다!IAM에서 엑세스 키를 발급 받을 때"AWS 외부에서 실행되는 애플리케이션"을 선택한 이유는, 로컬에서 테스트하기 위함인가요..?EC2에 백엔드 서버가 띄워져 있을 때는"AWS 컴퓨팅 서비스에서 실행되는 애플리케이션"을 선택해도 되지 않나? 라는 생각이 들었습니다...아니면 아래와 같이 정리해도 되는지도 궁금합니다!"AWS 컴퓨팅에서 실행되는 애플리케이션" 선택: EC2에서 직접 엑세스 키 설정"AWS 외부에서 실행되는 애플리케이션" 선택: EC2 내부의 실행되는 백엔드 서버에서 엑세스 키 설정
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
indexOf를 사용해서 풀어보았습니다 !!
function solution(n, arr) { let answer = 0; //모든 학생이 짝이 되는 경우 for (let mento = 1; mento <= n; mento++) { for (let mentee = 1; mentee <= n; mentee++) { //자기자신과 짞을 될수 없음 if (mento === mentee) continue; //시험별 멘토 멘티 등수 let mentoGrade, menteeGrade; let isPossible = true; //시험별 멘토 멘티 등수 비교 for (let test = 0; test < arr.length; test++) { mentoGrade = arr[test].indexOf(mento); menteeGrade = arr[test].indexOf(mentee); if (mentoGrade >= menteeGrade) { isPossible = false; break; } } //모든 시험에서 멘토 등수가 멘티 등수보다 낮은 경우 가능한 경우 if (isPossible) answer++; } } return answer; }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드 에러 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.김영한님 강의인 스프링 입문 중 스프링 통합 테스트 부분에서 intellij 개발 환경으로 테스트 코드 돌리려 하는데 'No tests were found' 라고 계속 뜨더라구요. 이유를 알 수 있을까요??참고로 build.gradle 파일 밑에 tasks.named('test') { useJUnitPlatform() }기재했고 settings - gradle 도구에서 build and run using, run tests using 둘 다 intellij 로 설정했습니다.
-
미해결
[사이드프로젝트] 디자이너 모집중입니다.
안녕하세요!저희는 사이드 프로젝트를 진행하고 싶어 모인 개발 팀입니다. 프로젝트에 참여하실 디자이너 분을 찾고 있습니다. 🙆🏻♀️이런 분을 찾고 있습니다. - 디자이너🙆🏻♂️✔ 책임감을 가지고 프로젝트를 진행할 수 있으신 분✔ 최소 한 번 이상 프로젝트를 진행해 보신 경험이 있으신 분(사이드 프로젝트 가능)✔ 사이드 프로젝트에서 얻어 가고 싶은 명확한 목표가 있는 분✔ 프로젝트에 충분한 시간을 투자할 수 있는 분✔ 개발자와 협업 경험을 해보고 싶은 분 🙆🏻♀️이런 분이면 더 좋을 거 같아요.🙆🏻♂️저희 개발 팀은 대부분 회사 일과는 별개로 퇴근 후 애정을 가지고 진행할 수 있는 사이드 프로젝트를원해서 모인 사람들이에요. 기획/디자이너 분들도 단기간에 포트폴리오를 완성하고 끝내는 것이 목표인 분 보다 오랫동안 같이 프로젝트를 꾸려가실 분이면 좋을거 같아요. 관심 있으신 분은 아래 오픈 채팅방 링크로 연락주세요!!⬇⬇⬇https://open.kakao.com/o/sSqvycMh
-
미해결2025 정보처리기사 필기
책이변경되었나요
지금은 책이 변경되었나요이 책으로 사면 되나요?
-
해결됨2025년 CPPG 개인정보관리사 자격증 취득하기 (개정안 반영)
개보위 개인정보파일 등록 기관
안녕하세요! 개인정보파일을 등록하는 기관은 모두, 개인정보보호법 시행령 제2조에 따른 공공기관에 해당되는 건가요??
-
미해결김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
help me 도와주세요 MySQL 설치 pls 급해요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.윈도우 - MySQL 설치 안내를 보고 따라 설치를 하는데 Type and Netwroking 화면에서 Next버튼이 활성화가 되어야 하는데 되어있지 않아요. 버튼 클릭이 안됩니다. 그래서 진행이 안됩니다. 도와주세요 help me
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
쿼리 스트링 또는 폼 데이터에서 멀티 값의 대한 스프링에서 처리해주는 방식
1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]쿼리 스트링 또는 폼 데이터에서 멀티 값의 대한 스프링에서 처리해주는 방식에 대해서 궁금한 게 있습니다. [질문 1]멀티 체크(등록 지역)은 th:field를 List<String>으로 했기 때문에 아무것도 선택 하지 않았을 경우 서버로 hidden=on만 오기 떄문에 스프링에서 알아서 field 타입에 알맞은 빈 값 -> [ ]을 반환해주는 것이 맞나요?그렇다면 각 타입마다 스프링에서 빈 값을 매핑해주는 것이 어떻게 정리되어있나요? 사용자 객체를 th:field로 했다면 어떻게 되나요?만약에 실제 로직이 위의 물음과 같다면 아무것도 체크하지 않거나 하나만 체크했을 경우는 같은 이름의 키를 가진 값이 두 개 이상일수없을텐데 이 경우 어떻게 빈 배열이 아래 regions에 할당되는 것인가요?private List<String> regions [질문 2] <input type="checkbox" id="open" th:field="*{open}" th:value="true" class="form-check-input"> <input type="checkbox" th:field="*{regions}" th:value="${region.key}" class="form-check-input">위는 판매 여부, 아래는 등록 지역에서 사용된 코드 중 일부입니다.판매 여부에서 th:value를 생략한 이유는 th:field가 open, 즉 boolean타입으로 정의되어있어서 th:value의 기본 값이 자동으로 true로 되기 때문에 생략이 가능한것이라고 생각했습니다.때문에 등록 지역에서 th:value를 따로 region.key로 해준것은 field가 List<String>타입이니 value의 타입은 자연스럽게 String이 될것이고 boolean과 달리 String은 기본 value가 없어서 따로 구분할 value를 해줘야하기 때문에 각 checkbox마다 value를 region.key로 커스텀 등록 해준 것이 맞나요?[질문 3]등록 지역은 스프링이 값을 리스트로 바꿔줘 해주는데 이것은 th:field타입을 따라가서 그런가요?그리고 등록 지역의 여러 체크박스가 하나의 컬렉션(List<String>) 필드로 묶여서 바인딩되는 건 name 속성이 같기 때문인가요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
32강 강의중 인텔리제이 문제
다름 아니라 강사님께서 강의 하실땐 32강 도중에 User class에 User 부분이 빨간 글씨가 나오는데왜 제가 사용하는 인텔리제이에서는 빨간 글씨가 안나오나요?그리고 좌측에 빈 객체들에 콩모양도 안나타나요혹시 제껀 무료인 Community버전인데 강사님인 유료버전이라서 그런가요?아니면 설정을 따로 해야하나요?구글에 찾아봐도 잘 안나와서 물어봅니다.학습관련 질문이 아니라 죄송합니다.
-
미해결
CertsTimeは最新のSAP C_IBP_2502本試験の問題をお届けします
SAP認定アソシエイト - SAP IBP for Supply Chain試験に合格することは、単に履歴書にもう一行追加することではありません。それは、深い知識と戦略的なC_IBP_2502試験準備の両方を要求される課題に対応できることを証明することです。SAP C_IBP_2502試験は、記憶した内容だけを問うものではなく、批判的思考力、予想外の状況への適応力、そして現実世界の問題解決を反映した専門知識の応用力が評価されます。そのため、直前の詰め込み学習やランダムなSAP C_IBP_2502練習問題に頼っても、成功にはなかなかつながりません。最高のパフォーマンスを発揮するには、一貫した練習と賢い戦略を融合させたC_IBP_2502試験対策プランが必要です。これにより、問題パターンを見抜き、時間を効果的に管理し、自信を持って解答する力が身につきます。そして、まさにそこでCertsTimeのような目的志向のリソースがゲームチェンジャーとなるのです。CertsTime は、高品質なC_IBP_2502試験練習問題を提供し、学習時間を集中した成果志向の学習体験へと変え、試験当日に万全の準備で臨み、合格点を手にするための道を切り開きます。CertsTimeがC_IBP_2502試験対策の成功への道をどう変えるかCertsTimeは、単にランダムなC_IBP_2502試験問題を提供するのではなく、実際の試験の流れを反映したガイド付きの学習パスを構築します。単なる練習問題に取り組むのではなく、試験問題のロジックを認識し、不要な情報を排除し、時間制限の中で正しい解答を選ぶ訓練をしているのです。取り組むすべてのSAP C_IBP_2502練習問題が、正確性の向上、スピードの改善、意思決定スキルの研ぎ澄ましの機会となります。実際の試験に臨む頃には、まるですでに試験を経験したかのような感覚になるでしょう——ただし今回は、その勝利が正式なものとなるのです。詳細はこちら:https://www.certstime.com/cheat-sheet-c-ibp-2502-dumps
-
미해결맞춤형 LLM 만들기 : 처음 시작하는 분을 위한 RAG 기초 개념부터 멀티모달·Agent 실습까지
실습을 위한 구글 드라이브 접근권한 해제요청
아래 2개 링크에 대한 접근권한이 막혀있습니다.ㅠㅠ권한을 풀어주세요...-- 아래 --[실습] 벡터_데이터베이스_기반_RAG어플리케이션[실습] PDF내용_기반_질의응답_애플리케이션[실습] DB_to_VectorDB_Searching_Chatbot
-
미해결
로그인창 비밀번호가 자꾸 틀리다고 나옴
새로 openapi 등등을 다운로드 설치했는데 지금의 문제는 키움 openapi 로그창의 비밀번호가 틀리다는 메세지가 게속 나옵니다. 이비밀번호를 뭘 입력해야 되나요? 계좌비밀번호 입력하는 것 아닌가요? 계좌비밀번호를 입력해도 계속 에러발생합니다.그러니 당연히 아래와 같은 아이콘이 생기지 않습니다.원인이 뭔지 모르겠네요아래는 코드입니다.from pykiwoom.kiwoom import Kiwoom kiwoom = Kiwoom() kiwoom.CommConnect(block=True) # 로그인 창을 띄워 로그인을 진행합니다. block=True는 로그인 완료까지 코드 실행을 대기시킵니다. accounts = kiwoom.GetLoginInfo("ACCNO") # 로그인한 계좌 목록을 가져옵니다. 문자열 형태로 계좌번호가 반환됩니다. first_account = accounts[0] # 첫 번째 계좌를 선택합니다. # 예수금 상세 정보 요청 # '예수금'은 "opw00001" TR을 사용하여 조회할 수 있습니다. # 첫 번째 매개변수는 TR 코드, 두 번째는 계좌번호 10자리, 세 번째는 비밀번호(미사용 시 ""), # 네 번째는 조회구분(2: 일반조회, 3: 추정조회), 마지막은 요청구분(0: 조회, 1: 파일로 저장)입니다. data = kiwoom.block_request("opw00001", 계좌번호=first_account, 비밀번호="", 비밀번호입력매체구분="00", 조회구분=2, output="예수금상세현황", next=0) # 예수금 정보 출력 deposit = data['예수금'] print(f"계좌 예수금: {deposit}원")너무 안돼서 강사님의 코드를 그대로 복사해서 입력했습니다.
-
해결됨기초 탄탄! 독하게 시작하는 Java - Part 2 : OOP와 JVM
임시 객체의 첫 번째 상황에 대한 질문
강의에서 임시 객체가 생성되는 첫 번째 상황으로 클래스가 함수의 반환 자료형이 될 경우 (이름이 없는) 임시 객체를 생성을 언급해주셨습니다. 이 경우가 아래와 같은 상황을 말하는걸까요?Class get() { return new Class(); } 그렇다면, 해당 함수(메서드)로 받은 인스턴스에 대한 참조자가 생긴다면, 그 때는 임시 객체가 아니게 되는건가요?Class value = get();
-
미해결
openapi 비밀번호 계속 불일치나와
새로 openapi 등등을 다운로드 설치했는데 지금의 문제는 키움 openapi 로그창의 비밀번호가 틀리다는 메세지가 게속 나옵니다. 이비밀번호, 뭘 입력해야 되나요? 계좌비밀번호 입력하는 것 아닌가요? 계좌비밀번호를 입력해도 계속 에러발생합니다.그러니 당연히 아래와 같은 아이콘이 생기지 않습니다.원인이 뭔지 모르겠네요.
-
미해결파이썬 알고리즘 트레이딩 파트3: 클라우드 거래 자동화
AutoAdminLogon 설정을 로컬에서 하는건가요?
안녕하세요, 강의 잘 듣고 있습니다. AutoAdminLogon 설정을 로컬 PC에서 하는건가요 혹은 VM상에서 설정하는건가요? 강의상에서는 VM상에서 설정을 하시는 것 같은데, 제 VM에는 알려주신 경로로 들어가도 AutoAdminLogon 파일이 보이지가 않네요.(로컬 PC에서는 해당 파일이 보입니다)
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
GetName이 이미있는데용?
25.08.12 일언리얼 5.4VS 2022 기준으로 const FString& GetName() const;를 알트 + 엔터 해보면const FString& GetName() const{if(CachedNameString.IsEmpty() && !Key.Name.IsNone()){CachedNameString = Key.Name.ToString();}return CachedNameString;} 요렇게 이미 있네요..!? void SetName(const FString& InName); 이것도 있어유 void SetName(const FString& InNameString){ if(NameString.IsSet()) { if(NameString.GetValue().Equals(InNameString, ESearchCase::CaseSensitive)) { return; } } Name.Reset(); NameString = InNameString;}
-
미해결React Native with Expo: 제로초에게 제대로 배우기
apk 파일 추출 관련 문의 드립니다.
만들어보고 있는 앱을 실 기기에 설치해서 테스트 해볼 일이 있어 apk 파일을 추출하려 합니다.백엔드 url이 http 라 app.json android 내에 useClearTextTraffic true 도 추가해주었습니다. "usesCleartextTraffic": trueeas.json 내 build 에 release 를 추가하였고, "release": { "android": { "buildType": "apk" } }eas build --platform android --profile release 명령어를 통해 빌드 했습니다.생성된 apk 를 실 기기에 설치 후 실행 했을 때 api 호출을 통해 데이터를 받아와서 뿌려주는 부분에 데이터가 하나도 나오고 있지 않습니다.설치 된 development build 를 에뮬레이터에서 실행해보아도 마찬가지로 데이터가 하나도 나오지 않고, catch 부분에서 에러도 콘솔에 찍히지 않고 있습니다.ㅠㅠnpm run android 실행 후 s > a 입력해서 expo go 환경에서 확인해봤을 땐 데이터도 잘 받아와지는데혹시 어느 부분을 확인해봐야할까요? npm ls react├─┬ @expo/vector-icons@14.1.0│ └── react@19.0.0 deduped├─┬ @react-native-community/datetimepicker@8.4.1│ └── react@19.0.0 deduped├─┬ @react-native-kakao/core@2.4.0│ └── react@19.0.0 deduped├─┬ @react-native-kakao/user@2.4.0│ └── react@19.0.0 deduped├─┬ @react-navigation/bottom-tabs@7.4.6│ └── react@19.0.0 deduped├─┬ @react-navigation/drawer@7.5.7│ ├─┬ react-native-drawer-layout@4.1.12│ │ └── react@19.0.0 deduped│ ├── react@19.0.0 deduped│ └─┬ use-latest-callback@0.2.4│ └── react@19.0.0 deduped├─┬ @react-navigation/elements@2.6.3│ ├── react@19.0.0 deduped│ └─┬ use-sync-external-store@1.5.0│ └── react@19.0.0 deduped├─┬ @react-navigation/native@7.1.17│ ├─┬ @react-navigation/core@7.12.4│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ expo-blur@14.1.5│ └── react@19.0.0 deduped├─┬ expo-font@13.3.2│ └── react@19.0.0 deduped├─┬ expo-image@2.4.0│ └── react@19.0.0 deduped├─┬ expo-linear-gradient@14.1.5│ └── react@19.0.0 deduped├─┬ expo-linking@7.1.7│ └── react@19.0.0 deduped├─┬ expo-router@5.1.4│ ├─┬ @radix-ui/react-slot@1.2.0│ │ ├─┬ @radix-ui/react-compose-refs@1.1.2│ │ │ └── react@19.0.0 deduped│ │ └── react@19.0.0 deduped│ ├─┬ @react-navigation/native-stack@7.3.25│ │ └── react@19.0.0 deduped│ └─┬ react-native-is-edge-to-edge@1.2.1│ └── react@19.0.0 deduped├─┬ expo-status-bar@2.2.3│ ├─┬ react-native-edge-to-edge@1.6.0│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ expo@53.0.20│ ├─┬ expo-asset@11.1.7│ │ └── react@19.0.0 deduped│ ├─┬ expo-keep-awake@14.1.4│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ react-dom@19.0.0│ └── react@19.0.0 deduped├─┬ react-native-gesture-handler@2.24.0│ └── react@19.0.0 deduped├─┬ react-native-gifted-charts@1.4.63│ ├─┬ gifted-charts-core@0.1.65│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ react-native-reanimated@3.17.5│ ├─┬ react-native-is-edge-to-edge@1.1.7│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ react-native-safe-area-context@5.4.0│ └── react@19.0.0 deduped├─┬ react-native-screens@4.11.1│ ├─┬ react-freeze@1.0.4│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped├─┬ react-native-svg@15.11.2│ └── react@19.0.0 deduped├─┬ react-native-web@0.20.0│ └── react@19.0.0 deduped├─┬ react-native-webview@13.13.5│ └── react@19.0.0 deduped├─┬ react-native@0.79.5│ ├─┬ @react-native/virtualized-lists@0.79.5│ │ └── react@19.0.0 deduped│ └── react@19.0.0 deduped└── react@19.0.0 npm ls react-native├─┬ @expo/vector-icons@14.1.0│ └── react-native@0.79.5 deduped├─┬ @react-native-async-storage/async-storage@2.1.2│ └── react-native@0.79.5 deduped├─┬ @react-native-community/datetimepicker@8.4.1│ └── react-native@0.79.5 deduped├─┬ @react-native-kakao/core@2.4.0│ └── react-native@0.79.5 deduped├─┬ @react-native-kakao/user@2.4.0│ └── react-native@0.79.5 deduped├─┬ @react-navigation/bottom-tabs@7.4.6│ └── react-native@0.79.5 deduped├─┬ @react-navigation/drawer@7.5.7│ ├─┬ react-native-drawer-layout@4.1.12│ │ └── react-native@0.79.5 deduped│ └── react-native@0.79.5 deduped├─┬ @react-navigation/elements@2.6.3│ └── react-native@0.79.5 deduped├─┬ @react-navigation/native@7.1.17│ └── react-native@0.79.5 deduped├─┬ expo-apple-authentication@7.2.4│ └── react-native@0.79.5 deduped├─┬ expo-blur@14.1.5│ └── react-native@0.79.5 deduped├─┬ expo-constants@17.1.7│ └── react-native@0.79.5 deduped├─┬ expo-image@2.4.0│ └── react-native@0.79.5 deduped├─┬ expo-linear-gradient@14.1.5│ └── react-native@0.79.5 deduped├─┬ expo-linking@7.1.7│ └── react-native@0.79.5 deduped├─┬ expo-router@5.1.4│ ├─┬ @expo/metro-runtime@5.0.4│ │ └── react-native@0.79.5 deduped│ ├─┬ @react-navigation/native-stack@7.3.25│ │ └── react-native@0.79.5 deduped│ └─┬ react-native-is-edge-to-edge@1.2.1│ └── react-native@0.79.5 deduped├─┬ expo-status-bar@2.2.3│ ├─┬ react-native-edge-to-edge@1.6.0│ │ └── react-native@0.79.5 deduped│ └── react-native@0.79.5 deduped├─┬ expo-symbols@0.4.5│ └── react-native@0.79.5 deduped├─┬ expo-system-ui@5.0.10│ └── react-native@0.79.5 deduped├─┬ expo-web-browser@14.2.0│ └── react-native@0.79.5 deduped├─┬ expo@53.0.20│ ├─┬ expo-asset@11.1.7│ │ └── react-native@0.79.5 deduped│ ├─┬ expo-file-system@18.1.11│ │ └── react-native@0.79.5 deduped│ └── react-native@0.79.5 deduped├─┬ react-native-gesture-handler@2.24.0│ └── react-native@0.79.5 deduped├─┬ react-native-gifted-charts@1.4.63│ ├─┬ gifted-charts-core@0.1.65│ │ └── react-native@0.79.5 deduped│ └── react-native@0.79.5 deduped├─┬ react-native-reanimated@3.17.5│ ├─┬ react-native-is-edge-to-edge@1.1.7│ │ └── react-native@0.79.5 deduped│ └── react-native@0.79.5 deduped├─┬ react-native-safe-area-context@5.4.0│ └── react-native@0.79.5 deduped├─┬ react-native-screens@4.11.1│ └── react-native@0.79.5 deduped├─┬ react-native-svg@15.11.2│ └── react-native@0.79.5 deduped├─┬ react-native-webview@13.13.5│ └── react-native@0.79.5 deduped└─┬ react-native@0.79.5└─┬ @react-native/virtualized-lists@0.79.5└── react-native@0.79.5 deduped npm ls expo├─┬ @react-native-community/datetimepicker@8.4.1│ └── expo@53.0.20 deduped├─┬ @react-native-kakao/core@2.4.0│ └── expo@53.0.20 deduped├─┬ expo-apple-authentication@7.2.4│ └── expo@53.0.20 deduped├─┬ expo-blur@14.1.5│ └── expo@53.0.20 deduped├─┬ expo-build-properties@0.14.8│ └── expo@53.0.20 deduped├─┬ expo-constants@17.1.7│ └── expo@53.0.20 deduped├─┬ expo-dev-client@5.2.4│ ├─┬ expo-dev-launcher@5.1.16│ │ └── expo@53.0.20 deduped│ ├─┬ expo-dev-menu-interface@1.10.0│ │ └── expo@53.0.20 deduped│ ├─┬ expo-dev-menu@6.1.14│ │ └── expo@53.0.20 deduped│ ├─┬ expo-manifests@0.16.6│ │ └── expo@53.0.20 deduped│ ├─┬ expo-updates-interface@1.1.0│ │ └── expo@53.0.20 deduped│ └── expo@53.0.20 deduped├─┬ expo-font@13.3.2│ └── expo@53.0.20 deduped├─┬ expo-haptics@14.1.4│ └── expo@53.0.20 deduped├─┬ expo-image@2.4.0│ └── expo@53.0.20 deduped├─┬ expo-linear-gradient@14.1.5│ └── expo@53.0.20 deduped├─┬ expo-router@5.1.4│ └── expo@53.0.20 deduped├─┬ expo-splash-screen@0.30.10│ └── expo@53.0.20 deduped├─┬ expo-symbols@0.4.5│ └── expo@53.0.20 deduped├─┬ expo-system-ui@5.0.10│ └── expo@53.0.20 deduped├─┬ expo-web-browser@14.2.0│ └── expo@53.0.20 deduped└─┬ expo@53.0.20├─┬ expo-asset@11.1.7│ └── expo@53.0.20 deduped├─┬ expo-file-system@18.1.11│ └── expo@53.0.20 deduped└─┬ expo-keep-awake@14.1.4└── expo@53.0.20 deduped