Skip to content

jeiel85/markleaf-android

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

246 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Markleaf

Markleaf Logo

๊ฐ€๋ณ๊ฒŒ ์Œ“์ด๋Š” ์ƒ๊ฐ, ์ •๋ˆ๋œ Markdown ๋…ธํŠธ
Android์šฉ ๋กœ์ปฌ ์šฐ์„ (Local-first) ๋ฏธ๋‹ˆ๋ฉ€ Markdown ๋ฉ”๋ชจ ์•ฑ

Platform Language UI License F-Droid


๐Ÿƒ Markleaf๋ž€?

Markleaf๋Š” ๊ตฐ๋”๋”๊ธฐ๋ฅผ ๋œ์–ด๋‚ด๊ณ  ์˜ค์ง '๊ธฐ๋ก'๊ณผ '์ •๋ฆฌ'์—๋งŒ ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ Android Markdown ๋ฉ”๋ชจ ์•ฑ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์˜ ๋ฐ์ดํ„ฐ๋Š” ์˜ค์ง ๋‹น์‹ ์˜ ๊ธฐ๊ธฐ์—๋งŒ ์ €์žฅ๋˜๋ฉฐ, ํ‘œ์ค€ Markdown ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ์†Œ์œ ๊ถŒ๊ณผ ์ด์‹์„ฑ์„ ์™„๋ฒฝํžˆ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋™๊ธฐํ™”๋„ ๋‹น์‹ ์ด ์„ ํƒํ•œ ํด๋” ๋ฅผ ํ†ตํ•ด์„œ๋งŒ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค โ€” Markleaf ์ž์ฒด๋Š” ์ธํ„ฐ๋„ท์— ๋‚˜๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ธŒ๋žœ๋”ฉ ํŽ˜์ด์ง€ ๋ณด๊ธฐ ยท ํ˜„์žฌ ๋ฒ„์ „: v2.16.2 ยท Privacy Policy ยท F-Droid ยท Google Play


โœจ ํ•ต์‹ฌ ๊ธฐ๋Šฅ

์ž‘์„ฑ & ๋ฏธ๋ฆฌ๋ณด๊ธฐ

  • ์‹ค์‹œ๊ฐ„ Markdown ๋ฏธ๋ฆฌ๋ณด๊ธฐ โ€” ํŽธ์ง‘๊ณผ ์ฆ‰์‹œ ์ „ํ™˜๋˜๋Š” ํ”„๋ฆฌ๋ทฐ, ๋˜๋Š” Show Markdown syntax ์˜ต์…˜์œผ๋กœ ๋ผ์ด๋ธŒ syntax ์ปฌ๋Ÿฌ๋ง
  • GFM ํ‘œ / ์ฒดํฌ๋ฐ•์Šค / ์ธ์šฉ๋ฌธ / ์ฝœ์•„์›ƒ (> [!NOTE] โ€ฆ) โ€” ๋ชจ๋‘ ๋ฏธ๋ฆฌ๋ณด๊ธฐ์— ๋ Œ๋”๋ง
  • ์ฝ”๋“œ ๋ธ”๋ก syntax highlighting โ€” Kotlin, Java, Python, JavaScript/TypeScript, Bash, JSON, YAML, XML, SQL 10๊ฐœ ์–ธ์–ด ํ† ํฐ ์ปฌ๋Ÿฌ๋ง
  • ๊ฐ์ฃผ([^N]) ref โ†” def ์ ํ”„ โ€” ์œ„์ฒจ์ž๋ฅผ ํƒญํ•˜๋ฉด ์ •์˜๋กœ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ์Šคํฌ๋กค
  • ์ด๋ฏธ์ง€ ์ฒจ๋ถ€ + alt ํ…์ŠคํŠธ ํŽธ์ง‘ โ€” ์•ฑ ๋‚ด๋ถ€ ์ €์žฅ์†Œ์— ๊ฒฉ๋ฆฌ๋œ ์‚ฌ๋ณธ์œผ๋กœ ๋ณด๊ด€ (๋ฏธ๋””์–ด ๊ถŒํ•œ ๋ถˆํ•„์š”)
  • ์Šค๋งˆํŠธ Markdown ํฌ๋งทํŒ… ํ† ๊ธ€ โ€” ์„ ํƒ ์˜์—ญ ๋˜๋Š” ์ปค์„œ ์ฃผ๋ณ€ ๋‹จ์–ด๋ฅผ Bold/Italic/Strike/Inline Code๋กœ ๊ฐ์‹ธ๊ณ , ์ด๋ฏธ ๊ฐ์‹ธ์ง„ ํ…์ŠคํŠธ๋Š” ํ•œ ๋ฒˆ ๋” ๋ˆŒ๋Ÿฌ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ•ด์ œ
  • ํฌ์ปค์Šค ๋ชจ๋“œ / ๋‹จ์–ดยท๊ธ€์žยท์ฝ๊ธฐ ์‹œ๊ฐ„ ํ†ต๊ณ„ / ๋…ธํŠธ ์•ˆ์—์„œ ์ฐพ๊ธฐยท๋ฐ”๊พธ๊ธฐ

์ •๋ฆฌ & ํƒ์ƒ‰

  • ํƒœ๊ทธ ๊ธฐ๋ฐ˜ ๋ถ„๋ฅ˜ โ€” ๋ณธ๋ฌธ์— #ํƒœ๊ทธ ๋งŒ ์“ฐ๋ฉด ์ž๋™ ์ธ๋ฑ์‹ฑ, ํด๋” ์—†์Œ
  • Wikilinks ([[Title]]) + ๋ฐฑ๋งํฌ ํŒจ๋„ โ€” ์ž๋™ ์™„์„ฑ, ๋ˆ„๊ฐ€ ์ด ๋…ธํŠธ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š”์ง€ ํ•œ๋ˆˆ์—
  • ๋น ๋ฅธ ์ด๋™ (Quick switcher / Ctrl+K) โ€” Obsidian ์Šคํƒ€์ผ ์ œ๋ชฉ substring ์ ํ”„
  • SQLite FTS ๊ธฐ๋ฐ˜ ์ „๋ฌธ ๊ฒ€์ƒ‰ โ€” ๋ณธ๋ฌธ๊นŒ์ง€ ๋น ๋ฅด๊ฒŒ
  • ํ•€ / ์•„์นด์ด๋ธŒ / ํœด์ง€ํ†ต โ€” ํœด์ง€ํ†ต์€ ์˜๊ตฌ ์‚ญ์ œ ์ „์— ํ•œ ๋ฒˆ ๋” ๋ฌป์Šต๋‹ˆ๋‹ค

๋™๊ธฐํ™” & ๋‚ด๋ณด๋‚ด๊ธฐ (No-Cloud ์›์น™)

  • ํด๋” ๋ฏธ๋Ÿฌ ๋™๊ธฐํ™” โ€” SAF๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•œ ํด๋”(Drive/Dropbox/Syncthing/OneDrive/NAS ๋“ฑ)์— ๊ฐ ๋…ธํŠธ๋ฅผ .md ํŒŒ์ผ๋กœ ๋ฏธ๋Ÿฌ๋ง. Markleaf ์ž์ฒด๋Š” ์ธํ„ฐ๋„ท์— ์•ˆ ๋‚˜๊ฐ€๊ณ , ๋™๊ธฐํ™”๋Š” ์™ธ๋ถ€ ์•ฑ์ด ๊ทธ ํด๋”๋ฅผ ๋™๊ธฐํ™”ํ•˜๋Š” ๋ฐฉ์‹ ์œผ๋กœ ์œ„์ž„
  • ๊ฐœ๋ณ„ / ์ „์ฒด ๋…ธํŠธ .md ๋‚ด๋ณด๋‚ด๊ธฐ
  • ์‹œ์Šคํ…œ ๊ณต์œ  ์‹œํŠธ๋กœ ๋ณด๋‚ด๊ธฐ

๋””์ž์ธ & ์ ‘๊ทผ์„ฑ

  • Markleaf ๋…น์ƒ‰ ํ…Œ๋งˆ + Material You ํ† ๊ธ€ โ€” ์•ˆ๋“œ๋กœ์ด๋“œ 12+ ์‹œ์Šคํ…œ ์›”ํŽ˜์ดํผ ์ƒ‰์ƒ๋„ ์˜ต์…˜
  • ์ž๋™ ๋‹คํฌ ๋ชจ๋“œ โ€” ์‹œ์Šคํ…œ ์„ค์ • ๋”ฐ๋ผ
  • ํƒœ๋ธ”๋ฆฟ 2-Pane ๋ ˆ์ด์•„์›ƒ ์ตœ์ ํ™” โ€” ์ ‘๊ณ  ํŽด๊ธฐ ๊ฐ€๋Šฅํ•œ ๋…ธํŠธ ๋ชฉ๋ก
  • 6๊ฐœ ์–ธ์–ด UI โ€” ํ•œ๊ตญ์–ด / ์˜์–ด / ์ŠคํŽ˜์ธ์–ด / ์ผ๋ณธ์–ด / ํ”„๋ž‘์Šค์–ด / ๋…์ผ์–ด ๋ฆฌ์†Œ์Šค ์šด์˜
  • ์Šคํฌ๋ฆฐ์ƒท / ์ตœ๊ทผ ์•ฑ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ฐจ๋‹จ ์˜ต์…˜ โ€” ๋ฏผ๊ฐํ•œ ๋…ธํŠธ์šฉ

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ

Markleaf๋Š” ์ตœ์‹  Android ๊ฐœ๋ฐœ ํ‘œ์ค€์„ ์ค€์ˆ˜ํ•˜๋ฉฐ, ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์šฉ์ดํ•œ ํ˜„๋Œ€์ ์ธ ์Šคํƒ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

  • UI: Jetpack Compose + Material 3 + Material You ๋‹ค์ด๋‚ด๋ฏน ์ปฌ๋Ÿฌ
  • Architecture: ๋‹จ์ˆœํ•œ ๋ ˆ์ด์–ด ๋ถ„๋ฆฌ (core / data / domain / feature / ui) + Repository ํŒจํ„ด
  • Database: Room โ€” SQLite ๊ธฐ๋ฐ˜ ๋กœ์ปฌ ํผ์‹œ์Šคํ„ด์Šค, FTS4 ๊ฐ€์ƒ ํ…Œ์ด๋ธ”๋กœ ์ „๋ฌธ ๊ฒ€์ƒ‰
  • Markdown ํŒŒ์„œ: commonmark-java (CommonMark 0.30 + GFM ํ™•์žฅ: ํ‘œ, ์ทจ์†Œ์„ , task lists, ๊ฐ์ฃผ, YAML frontmatter)
  • Asynchronous: Kotlin Coroutines & Flow
  • Storage Access Framework (SAF) โ€” ํด๋” ๋ฏธ๋Ÿฌ ๋™๊ธฐํ™” + ์ด๋ฏธ์ง€ ์ฒจ๋ถ€
  • ์ด๋ฏธ์ง€ ๋กœ๋”ฉ: Coil โ€” F-Droid ์นœํ™”์  Apache 2.0
  • DataStore Preferences โ€” ์•ฑ ์„ค์ •
  • Profile Installer 1.4.0 + Macrobenchmark โ€” Cold start baseline profile ์ธก์ • (TB320FC ๊ธฐ์ค€ 326ms)
  • ํ…Œ์ŠคํŠธ: JUnit + Robolectric + Roborazzi ์‹œ๊ฐ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ (Linux ๊ณจ๋“ , threshold 0.005)
  • CI: GitHub Actions โ€” ๋นŒ๋“œ, ๋ฆด๋ฆฌ์Šค(์„œ๋ช…๋œ APK + AAB), launch-smoke, record-roborazzi

๐Ÿ— ์•„ํ‚คํ…์ฒ˜

Markleaf๋Š” ๊ด€์‹ฌ์‚ฌ ๋ถ„๋ฆฌ์™€ ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅ์„ฑ์„ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ ˆ์ด์–ด ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

com.markleaf.notes
โ”œโ”€โ”€ core          # ๋งˆํฌ๋‹ค์šด ์ฒ˜๋ฆฌ, ์ฒจ๋ถ€, ๋™๊ธฐํ™” ๋“ฑ ๊ณตํ†ต ํ•ต์‹ฌ ๋กœ์ง
โ”œโ”€โ”€ data          # Room DB, Entity, Repository ๊ตฌํ˜„์ฒด (Data Source)
โ”œโ”€โ”€ domain        # Model, Repository ์ธํ„ฐํŽ˜์ด์Šค (Business Logic)
โ”œโ”€โ”€ feature       # ํ™”๋ฉด๋ณ„ UI ๋ฐ ViewModel (Presentation)
โ”‚   โ”œโ”€โ”€ editor    # ํŽธ์ง‘๊ธฐ, Find/Replace, Wikilink ์ž๋™์™„์„ฑ, ์ฝœ์•„์›ƒ, ํ‘œ
โ”‚   โ”œโ”€โ”€ notes     # ๋…ธํŠธ ๋ชฉ๋ก, Quick Switcher, ์•„์นด์ด๋ธŒ
โ”‚   โ”œโ”€โ”€ search    # FTS ๊ธฐ๋ฐ˜ ์ „๋ฌธ ๊ฒ€์ƒ‰
โ”‚   โ”œโ”€โ”€ tags      # ํƒœ๊ทธ ์ธ๋ฑ์Šค
โ”‚   โ”œโ”€โ”€ trash     # ํœด์ง€ํ†ต / ์˜๊ตฌ ์‚ญ์ œ
โ”‚   โ””โ”€โ”€ settings  # ํ…Œ๋งˆ, ๋™๊ธฐํ™” ํด๋”, ์Šคํฌ๋ฆฐ์ƒท ์ฐจ๋‹จ ๋“ฑ
โ”œโ”€โ”€ navigation    # Jetpack Compose Navigation ์„ค์ •
โ””โ”€โ”€ ui            # ํ…Œ๋งˆ(Markleaf green / Material You), ๊ณตํ†ต ์ปดํฌ๋„ŒํŠธ

๐Ÿš€ ์‹œ์ž‘ํ•˜๊ธฐ

์„ค์น˜ ๋ฐฉ๋ฒ•

  • F-Droid: Markleaf on F-Droid โ€” F-Droid ํด๋ผ์ด์–ธํŠธ์—์„œ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜ ์œ„ ๋งํฌ๋กœ ๋ฐ”๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์ผ ์„œ๋ช… ํ‚ค(SHA-256 0be97352โ€ฆf91a)๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ GitHub Releases APK๋กœ ์‚ฌ์ด๋“œ๋กœ๋“œํ•œ ๊ฒฝ์šฐ์—๋„ ๋Š๊น€ ์—†์ด ์—…๋ฐ์ดํŠธ๊ฐ€ ์ด์–ด์ง‘๋‹ˆ๋‹ค.
  • Google Play: Markleaf on Google Play โ€” Play Store์—์„œ ์ •์‹ ๋ฐฐํฌ๋˜๋Š” ๋ฒ„์ „์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
  • APK ์ง์ ‘ ์„ค์น˜: v2.16.2 Release ๋˜๋Š” Releases ํŽ˜์ด์ง€์—์„œ ์ตœ์‹  ๋ฒ„์ „์˜ APK๋ฅผ ๋‹ค์šด๋กœ๋“œํ•œ ๋’ค Android ๊ธฐ๊ธฐ์—์„œ ์‹คํ–‰ํ•ด ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์ถ•

์ง์ ‘ ๋นŒ๋“œํ•˜๊ฑฐ๋‚˜ ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ ๊ณผ์ •์„ ๋”ฐ๋ฅด์„ธ์š”.

# ์ €์žฅ์†Œ ๋ณต์ œ
git clone https://github.com/jeiel85/markleaf-android.git

# ํ”„๋กœ์ ํŠธ ํด๋” ์ด๋™
cd markleaf-android

# ๋นŒ๋“œ ๋ฐ ์„ค์น˜
./gradlew installDebug

๐Ÿ”’ No-Cloud by design

Markleaf ์ž์ฒด๋Š” ์ ˆ๋Œ€๋กœ ๋„คํŠธ์›Œํฌ์— ๋‚˜๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๊ธฐ ๋ฐ–์œผ๋กœ ๋ณด๋‚ผ์ง€ ์—ฌ๋ถ€๋Š” ์ „์ ์œผ๋กœ ๋‹น์‹ ์˜ ์„ ํƒ ์ž…๋‹ˆ๋‹ค.

  • โœ… android.permission.INTERNET ๊ถŒํ•œ ์„ ์–ธ ์—†์Œ โ€” Markleaf๋Š” ๋„คํŠธ์›Œํฌ ์š”์ฒญ์„ ์ง์ ‘ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
  • โœ… Markleaf ์ž์ฒด ์„œ๋ฒ„ / ์ž์ฒด ๋ฐฑ์—”๋“œ ์—†์Œ
  • โœ… ๋ถ„์„ / ๊ด‘๊ณ  / ์ถ”์  / ํ์‡„ํ˜• SDK ์—†์Œ
  • โœ… android:allowBackup="false" โ€” Android ์ž๋™ ๋ฐฑ์—… / ๊ธฐ๊ธฐ ๊ฐ„ ์ „์†ก์—์„œ Markleaf ๋ฐ์ดํ„ฐ ์ œ์™ธ
  • โœ… ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ export, share, ์™ธ๋ถ€ ๋งํฌ ์—ด๊ธฐ, SAF ํด๋” ์„ ํƒ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ๋งŒ OS ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์ด๋™
  • โœ… ์™„์ „ํ•œ ์˜คํ”ˆ์†Œ์Šค, Apache 2.0 ๋ผ์ด์„ ์Šค๋กœ ๋ˆ„๊ตฌ๋‚˜ ๊ฐ์‚ฌ ๊ฐ€๋Šฅ

"never leaves your device" ๊ฐ€ ์–ด๋–ป๊ฒŒ ์ •ํ™•ํžˆ ์ž‘๋™ํ•˜๋Š”์ง€๋Š” Privacy Policy ์™€ No-Cloud Certification ์— ์ •๋ฆฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿ—บ ๋กœ๋“œ๋งต

v1.x โ€” MVP

  • ๊ธฐ๋ณธ์ ์ธ Markdown ํŽธ์ง‘ ๋ฐ ์ €์žฅ
  • ํƒœ๊ทธ ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง ๋ฐ ๊ฒ€์ƒ‰
  • ์ƒˆ๋กœ์šด ์•ฑ ์•„์ด์ฝ˜ ๋ฐ ๋ธŒ๋žœ๋”ฉ ์ ์šฉ
  • ์‹ค์‹œ๊ฐ„ ๋งˆํฌ๋‹ค์šด ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ฐ ๋‹คํฌ ๋ชจ๋“œ
  • SQLite FTS ๊ธฐ๋ฐ˜ ๊ณ ์„ฑ๋Šฅ ๊ฒ€์ƒ‰
  • ํƒœ๋ธ”๋ฆฟ์šฉ 2-Pane ๋ ˆ์ด์•„์›ƒ ์ตœ์ ํ™”
  • ๋‹จ์ผ/์ „์ฒด ๋…ธํŠธ Markdown ๋‚ด๋ณด๋‚ด๊ธฐ
  • v1.0.0 ์ •์‹ ์ถœ์‹œ ์™„๋ฃŒ

v2.x โ€” Bear-class ํ™•์žฅ (ํ˜„์žฌ)

  • v2.3 CommonMark ํŒŒ์„œ ๋„์ž… โ€” ์ฝœ์•„์›ƒ, GFM ์ทจ์†Œ์„ , task lists, ๊ฐ์ฃผ, YAML frontmatter
  • v2.4โ€“2.5 Wikilinks ([[Title]]) + ์ž๋™ ์™„์„ฑ + ๋ฐฑ๋งํฌ ํŒจ๋„
  • v2.6 ์ด๋ฏธ์ง€ ์ฒจ๋ถ€ + alt ํ…์ŠคํŠธ + ๋ผ์ดํŠธ๋ฐ•์Šค
  • v2.7 SAF ํด๋” ๋ฏธ๋Ÿฌ ๋™๊ธฐํ™” (Drive/Dropbox/Syncthing ์œ„์ž„ํ˜•, no INTERNET ์œ ์ง€)
  • v2.8 Material You ํ† ๊ธ€ + Markleaf ๋…น์ƒ‰ ํ…Œ๋งˆ ๋ณต์›
  • v2.9 ์Šคํฌ๋ฆฐ์ƒท ์ฐจ๋‹จ ์˜ต์…˜, ์‹œ๊ฐ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ(Roborazzi) ์ •์ฐฉ
  • v2.10 ์ฝ”๋“œ ๋ธ”๋ก syntax highlighting (10๊ฐœ ์–ธ์–ด)
  • v2.11 GFM ํ‘œ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ๋ถ€ํ™œ
  • v2.12 ๋น ๋ฅธ ์ด๋™(Quick Switcher / Ctrl+K)
  • v2.13 ๋…ธํŠธ ์•ˆ์—์„œ ์ฐพ๊ธฐ / ๋ฐ”๊พธ๊ธฐ
  • v2.14 ๊ฐ์ฃผ ref โ†” def ํด๋ฆญ ์ ํ”„
  • v2.15 F-Droid ์ œ์ถœ ์•ˆ์ •ํ™”์™€ no-cloud ๋ฌธ์„œ ์ •๋น„
  • v2.16 ํ™ˆ ํ™”๋ฉด ์œ„์ ฏ, ์ƒ์ฒด ์ธ์ฆ ์ž ๊ธˆ, ์˜คํ”ˆ์†Œ์Šค ํˆฌ๋ช…์„ฑ, ์Šค๋งˆํŠธ Markdown ํฌ๋งทํŒ…
  • Google Play ์ •์‹ ์ถœ์‹œ (ํ˜„์žฌ ๋น„๊ณต๊ฐœ ํ…Œ์ŠคํŠธ ์ค‘)

๐Ÿ“œ ๋ผ์ด์„ ์Šค

์ด ํ”„๋กœ์ ํŠธ๋Š” Apache License 2.0์— ๋”ฐ๋ผ ๋ผ์ด์„ ์Šค๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ LICENSE ํŒŒ์ผ์„ ํ™•์ธํ•˜์„ธ์š”.


Made with โค๏ธ by Markleaf Team