From b4fbdef25e385357652f05f193ee90802f44d617 Mon Sep 17 00:00:00 2001 From: mym0404 Date: Wed, 24 Apr 2024 14:29:18 +0900 Subject: [PATCH] docs: update readme --- README.md | 65 +++++++++++++++++---------------------------- public/favicon.png | Bin 7080 -> 7445 bytes 2 files changed, 25 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index 89ed8dba..a5cab137 100644 --- a/README.md +++ b/README.md @@ -1,50 +1,40 @@ ->[!TIP] ->This project is ready to use! -> ->If this project has helped you out, please support us with a star ๐ŸŒŸ. - -# React Native Naver Map SDK - -[![NPM](http://img.shields.io/npm/v/@mj-studio/react-native-naver-map)](https://npmjs.org/package/@mj-studio/react-native-naver-map) -![Android SDK - 3.18.0](https://img.shields.io/badge/Android_SDK-3.18.0-2ea44f) -![iOS SDK - 3.18.0](https://img.shields.io/badge/iOS_SDK-3.18.0-3522ff) - -![weekly download badge](https://img.shields.io/npm/dm/@mj-studio/react-native-naver-map.svg) - - -[API Docs](https://mj-studio-library.github.io/react-native-naver-map/interfaces/NaverMapViewProps.html) - -- [Guide #1(ko) - ์„ค์น˜, ํ‚ค ๋ฐœ๊ธ‰](https://medium.com/mj-studio/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EB%84%A4%EC%9D%B4%ED%8A%B8%EB%B8%8C%EB%A1%9C-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%A7%80%EB%8F%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-1-%EC%84%A4%EC%B9%98%EC%99%80-%ED%82%A4-%EB%B0%9C%EA%B8%89-%EB%B0%9B%EA%B8%B0-f826d8c0644d) -- [Guide #2(ko) - ์นด๋ฉ”๋ผ, ์œ„์น˜ ์ด๋™](https://medium.com/mj-studio/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EB%84%A4%EC%9D%B4%ED%8A%B8%EB%B8%8C%EB%A1%9C-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%A7%80%EB%8F%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-2-%EC%B9%B4%EB%A9%94%EB%9D%BC-%EC%9C%84%EC%B9%98-%EC%9D%B4%EB%8F%99%ED%95%98%EA%B8%B0-ea39843b31d2) +

+ +
+
+

React Native Naver Map

+

+ NPM downloads + NPM version + Android SDK version + iOS SDK version + License +

Bring Naver Map to Your React Fingertips

+

+

+ + +- [Documentation](https://mj-studio-library.github.io/react-native-naver-map/interfaces/NaverMapViewProps.html) +- [Tutorial 1 - ์„ค์น˜, ํ‚ค ๋ฐœ๊ธ‰](https://medium.com/mj-studio/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EB%84%A4%EC%9D%B4%ED%8A%B8%EB%B8%8C%EB%A1%9C-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%A7%80%EB%8F%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-1-%EC%84%A4%EC%B9%98%EC%99%80-%ED%82%A4-%EB%B0%9C%EA%B8%89-%EB%B0%9B%EA%B8%B0-f826d8c0644d) +- [Tutorial 2 - ์นด๋ฉ”๋ผ, ์œ„์น˜ ์ด๋™](https://medium.com/mj-studio/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EB%84%A4%EC%9D%B4%ED%8A%B8%EB%B8%8C%EB%A1%9C-%EB%84%A4%EC%9D%B4%EB%B2%84-%EC%A7%80%EB%8F%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-2-%EC%B9%B4%EB%A9%94%EB%9D%BC-%EC%9C%84%EC%B9%98-%EC%9D%B4%EB%8F%99%ED%95%98%EA%B8%B0-ea39843b31d2) ---- - -![thumbnail](https://raw.githubusercontent.com/mym0404/image-archive/master/202404170109909.webp) - -๋ฆฌ์•กํŠธ ๋„ค์ดํ‹ฐ๋ธŒ [Naver Map](https://www.ncloud.com/product/applicationService/maps) ์ปดํฌ๋„ŒํŠธ์ž…๋‹ˆ๋‹ค. preview ## Highlights -### 1. ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š” ๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋Œ€์ฒด - -๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฒ„๊ทธ๋‚˜ ์ฝ”๋“œ์ƒ์—์„œ ๊ณ„์‚ฐ์ด ์ž˜๋ชป๋˜๊ณ  ์žˆ๋˜ ๋ถ€๋ถ„๋“ค์„ ๊ณ ์น˜๊ณ  ์ƒˆ๋กœ์šด API๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉฐ ๊ณ„์†ํ•ด์„œ ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค. - -์ปค์Šคํ…€ ๋งˆ์ปค๋“ค, ๋งˆ์ปค ํด๋Ÿฌ์Šคํ„ฐ๋ง, ์Šคํฌ๋ฆฐ์—์„œ์˜ ์œ„์น˜์™€ ์ง€๋ฆฌ์  ์œ„์น˜๊ฐ„์˜ ์†์‰ฌ์šด ๋ณ€ํ™˜๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. - -### 2. New Architecture Fabric ์ง€์› +### 1. New Architecture Fabric > [!NOTE] > Fabric์„ ์ง€์›ํ•œ๋‹ค๊ณ  Old Architecture๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์•„๋‹Œ ๋‘ Architecture๋ชจ๋‘์—์„œ ์ž‘๋™ํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. -### 3. ์ƒ์„ธํ•œ API Documentation ์ง€์› +### 2. Detailed API Documentation ๊ฑฐ์˜ ๋ชจ๋“  ํƒ€์ž…์ด ์„ค๋ช…๋˜์–ด ์žˆ๋Š” [API Docs](https://mj-studio-library.github.io/react-native-naver-map/interfaces/NaverMapViewProps.html)๋ฅผ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ํ•œ ๊ฐ€๋…์„ฑ์„ ์‚ด๋ ธ์œผ๋ฉฐ `component` ์ชฝ์—์„œ ์›ํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ์˜ ํƒ€์ž…๊ณผ `Prop`๋ฐ `Ref`๋กœ ์‚ฌ์šฉ๋ฒ•์„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. -### 4. Expo ์ง€์› +### 3. Expo Support [expo config plugin](https://docs.expo.dev/modules/config-plugin-and-native-module-tutorial/)์„ ์‚ฌ์šฉํ•ด Expoํ™˜๊ฒฝ์—์„œ๋„ ์†์‰ฝ๊ฒŒ ์•„ํ‚คํ…์ณ์— ์ƒ๊ด€์—†์ด ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. @@ -53,7 +43,7 @@ Expo Go, Snack์—์„  ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜์ง€๋งŒ [development build](https://docs.expo.dev/develop/development-builds/introduction/), production ํ™˜๊ฒฝ์—์„œ ์†์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -### 5. 5๊ฐ€์ง€ ๋งˆ์ปค ์ด๋ฏธ์ง€ ํƒ€์ž… ๋ฐ ์บ์‹ฑ ์ง€์› +### 4. Marker Performance + Variants > [!IMPORTANT] > `[iOS, Android] x [new arch, old arch] x [debug, release]` @@ -65,15 +55,10 @@ Expo Go, Snack์—์„  ์‚ฌ์šฉํ•˜์ง€ - HTTP ๋„คํŠธ์›Œํฌ ์›น์ด๋ฏธ์ง€ - `children`์œผ๋กœ ์ „๋‹ฌํ•˜๋Š” React Native Custom View -### 6. ์ƒˆ๋กญ๊ฒŒ ๋งŒ๋“œ๋Š” ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Naver Map SDK์˜ ์ตœ์‹  ๊ธฐ๋Šฅ๋“ค์„ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค - -Seamlessํ•œ Props์™€ Command๋“ค๋กœ Naver Map์„ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - -### 7. ์„ฑ๋Šฅ ์ตœ์ ํ™” +### 5. Semaless API porting from Native Naver Map SDK -Event Coalescing๋ฅผ ํ†ตํ•ด Native -> JS ๋กœ์˜ ์ด๋ฒคํŠธ ์ค‘ ์“ธ๋ชจ์—†๋Š” ์ด๋ฒคํŠธ๋“ค์„ ๊ฑธ๋Ÿฌ๋‚ด ์„ฑ๋Šฅ์ด ์ตœ์ ํ™”๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. +์ตœ์‹  ๋ฒ„์ „์˜ SDK๋ฅผ ์ง€์›ํ•˜๋ฉฐ Props์™€ Command๋“ค๋กœ Naver Map์˜ ์ตœ์‹  ๊ธฐ๋Šฅ์„ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -๊ทธ๋ฆฌ๊ณ  ๋งˆ์ปค์˜ ์„ฑ๋Šฅ๋„ ํšจ๊ณผ์ ์œผ๋กœ ๊ณ ๋ ค๋˜์–ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ## Install diff --git a/public/favicon.png b/public/favicon.png index 03a6ce1e5cbfed6a1d62e30dca0e9467533629df..4d49949a8af98e8dc05593618bbf31434684db15 100644 GIT binary patch literal 7445 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 TZniUA00000NkvXXu0mjf!S7`3 literal 7080 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