Best android open-source packages and libraries.

And07 MindSync

🧠 μ—¬λŸ¬λͺ…μ΄μ„œ λ™μ‹œμ— λ§ˆμΈλ“œλ§΅μ„ 그릴 수 μžˆλ‹€κ³ ~? MindSync ...더보기

Mind Sync (Mind Synchronize)

λ§ˆμΈλ“œλ§΅ μ‹€μ‹œκ°„ 곡동 νŽΈμ§‘ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜

Hits

✨ ν”„λ‘œμ νŠΈ μ†Œκ°œ

  • λ§ˆμΈλ“œλ§΅μ„ μ‚¬μš©ν•˜μ—¬ 아이디어λ₯Ό μ‹œκ°μ μœΌλ‘œ ν‘œν˜„ν•΄λ³΄μ„Έμš”
  • ν˜‘μ—…μ„ μ›ν•˜λŠ” μΉœκ΅¬λ‚˜ λ™λ£Œλ₯Ό μ΄ˆλŒ€ν•˜λŠ” 것도 κ°€λŠ₯ν•©λ‹ˆλ‹€
  • κ°„νŽΈν•˜κ²Œ λ§ˆμΈλ“œλ§΅μ„ μƒμ„±ν•˜κ³ , λ‹€λ₯Έ μ‚¬μš©μžλ“€κ³Ό μ‹€μ‹œκ°„μœΌλ‘œ 곡동 νŽΈμ§‘μ„ 진행할 수 μžˆμ–΄μš”

πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ νŒ€μ› μ†Œκ°œ

김찬희(J035) μ–‘μ„ μ•„(K023) 이상쀀(K027) μ΄μš©ν™˜(J110) μ΄μž¬ν•œ(K029)

βš’οΈ κΈ°λŠ₯ μ†Œκ°œ

πŸš€ 슀페이슀

  • μŠ€νŽ˜μ΄μŠ€λŠ” μ—¬λŸ¬ μ‚¬μš©μžκ°€ ν•¨κ»˜ ν˜‘μ—…ν•˜λŠ” κ³΅κ°„μž…λ‹ˆλ‹€.
  • 슀페이슀λ₯Ό λ§Œλ“€κ³ , μ΄ˆλŒ€μ½”λ“œλ₯Ό κ³΅μœ ν•΄μ„œ λ‹€λ₯Έ μ‚¬μš©μžλ₯Ό μ΄ˆλŒ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • μŠ€νŽ˜μ΄μŠ€μ— ν•¨κ»˜ μžˆλŠ” μ‚¬μš©μžλ“€μ€ μŠ€νŽ˜μ΄μŠ€μ— μ €μž₯된 λ³΄λ“œλ“€μ„ κ³΅μœ ν•˜κ²Œ λ©λ‹ˆλ‹€.
  • μŠ€νŽ˜μ΄μŠ€λŠ” μŠ€νŽ˜μ΄μŠ€μ— μ°Έμ—¬ν•œ λͺ¨λ“  μ‚¬μš©μžκ°€ λ‚˜κ°€κ²Œ 되면 μ‚­μ œλ©λ‹ˆλ‹€.
슀페이슀 μΆ”κ°€ μ΄ˆλŒ€ μ½”λ“œ λ°œκΈ‰ 슀페이슀 μ°Έκ°€ 슀페이슀 λ‚˜κ°€κΈ°

πŸ“ƒ λ³΄λ“œ

  • λ³΄λ“œλŠ” λ§ˆμΈλ“œλ§΅μ„ μ €μž₯ν•˜λŠ” κ³΅κ°„μž…λ‹ˆλ‹€.
  • 슀페이슀 ν•˜λ‚˜μ— μ—¬λŸ¬κ°œμ˜ λ³΄λ“œκ°€ μ €μž₯되고, 각 λ³΄λ“œμ—λŠ” λ§ˆμΈλ“œλ§΅μ΄ ν•˜λ‚˜μ”© ν• λ‹Ήλ©λ‹ˆλ‹€.
  • λ³΄λ“œλ₯Ό μ‚­μ œν•˜λ©΄ λ³΄λ“œλŠ” νœ΄μ§€ν†΅μœΌλ‘œ μ΄λ™λ©λ‹ˆλ‹€.
  • λ³΄λ“œλ₯Ό 영ꡬ μ‚­μ œν• μˆ˜λŠ” μ—†κ³ , μ‚­μ œλœ 일자 κΈ°μ€€μœΌλ‘œ 7일이 μ§€λ‚˜λ©΄ μžλ™μœΌλ‘œ μ‚­μ œλ©λ‹ˆλ‹€.
    • μ—¬λŸ¬λͺ…이 ν˜‘μ—…ν•  수 μžˆλŠ” ν™˜κ²½μ΄κΈ° λ•Œλ¬Έμ— 영ꡬ μ‚­μ œλŠ” λ˜μ§€ μ•Šλ„λ‘ ν–ˆμŠ΅λ‹ˆλ‹€.
λ³΄λ“œ 생성 λ³΄λ“œ μ‚­μ œ νœ΄μ§€ν†΅

🧠 λ§ˆμΈλ“œλ§΅

  • λ³΄λ“œλ₯Ό ν΄λ¦­ν•˜λ©΄ λ§ˆμΈλ“œλ§΅ ν™”λ©΄μœΌλ‘œ μ΄λ™ν•˜κ²Œ λ©λ‹ˆλ‹€.
  • 핡심 κΈ°λŠ₯인 λ§ˆμΈλ“œλ§΅μ„ 그리고, νŽΈμ§‘ν•  수 μžˆλŠ” κ³΅κ°„μž…λ‹ˆλ‹€.
  • λ…Έλ“œλ₯Ό μΆ”κ°€, μ‚­μ œ, νŽΈμ§‘, 이동할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • socket.io와 CRDT μ•Œκ³ λ¦¬μ¦˜μ„ μ΄μš©ν•΄ μ‹€μ‹œκ°„μœΌλ‘œ 톡신이 λ˜λ„λ‘ ν–ˆμŠ΅λ‹ˆλ‹€.
λ…Έλ“œ μΆ”κ°€ λ…Έλ“œ μ‚­μ œ λ…Έλ“œ νŽΈμ§‘
λ…Έλ“œ 이동 ν™•λŒ€/μΆ•μ†Œ/λ“œλž˜κ·Έ μ‹€μ‹œκ°„λ™μ‹œνŽΈμ§‘

🎯 기술적 도전

μ €ν¬λŠ” λ‹€μŒκ³Ό 같은 κ³Όμ œμ— λ„μ „ν–ˆμŠ΅λ‹ˆλ‹€.

  1. λ§ˆμΈλ“œλ§΅μ„ 그릴 수 μžˆλ‹€.
  2. λ§ˆμΈλ“œλ§΅μ„ λ™μ‹œμ— μ‹€μ‹œκ°„ νŽΈμ§‘ ν•  수 μžˆλ‹€.

κ·Έλž˜μ„œ ν•΄λ‹Ή 과제λ₯Ό μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ λ‹€μŒκ³Ό 같은 과정을 κ±°μ³€μŠ΅λ‹ˆλ‹€.

  1. λ§ˆμΈλ“œλ§΅μ„ 그리기 μœ„ν•΄

  2. λ§ˆμΈλ“œλ§΅μ„ λ™μ‹œμ— μ‹€μ‹œκ°„ νŽΈμ§‘ ν•  수 μžˆλ„λ‘ ν•˜κΈ° μœ„ν•΄

  3. λΉ λ₯Έ 응닡을 μœ„ν•œ 캐싱을 직접 κ΅¬ν˜„ν•΄ μ μš©ν–ˆμŠ΅λ‹ˆλ‹€.

  4. λ§ˆμΈλ“œλ§΅μ„ μ„œλ²„μ— μ €μž₯ν•˜λŠ” 곡간인 λ³΄λ“œμ™€ λ³΄λ“œλ₯Ό μ—¬λŸ¬κ°œ μ €μž₯ν•  수 μžˆλŠ” 곡간인 슀페이슀λ₯Ό 섀계해 μ‚¬μš©μžκ°€ μ΄ˆλŒ€/κ°€μž… ν•  수 μžˆλ„λ‘ ν–ˆμŠ΅λ‹ˆλ‹€.

  5. 자주 μ†Œν†΅ν•˜λ„λ‘ λ…Έλ ₯ν•˜λ©° ν˜‘μ—…ν–ˆμŠ΅λ‹ˆλ‹€.

    • νŽ˜μ–΄ν”„λ‘œκ·Έλž˜λ°μ„ 자주 ν–ˆμŠ΅λ‹ˆλ‹€.
    • μ•ˆλ“œλ‘œμ΄λ“œ&λ°±μ—”λ“œ λΆ„μ•Όκ°„μ˜ μ†Œν†΅λ„ 맀일 ν™œλ°œν•˜κ²Œ μ΄λ£¨μ–΄μ‘ŒμŠ΅λ‹ˆλ‹€.
      • μ΄ˆλ°˜μ—λŠ” 맀일 1μ‹œκ°„μ˜ ν‹°νƒ€μž„μ„ κ°€μ§€λ©΄μ„œ 맀일 1μ‹œκ°„μ”© κΌ­ λŒ€ν™”ν•˜λŠ” μ‹œκ°„μ„ κ°€μ‘ŒμŠ΅λ‹ˆλ‹€.
      • api 적용, μ†ŒμΌ“ 톡신을 κ°œλ°œν•˜κΈ° μ‹œμž‘ν•˜κ³  λ‚˜μ„œλΆ€ν„°λŠ” 더 λ§Žμ€ μ†Œν†΅μ΄ ν•„μš”ν–ˆκ³ , κ·Έλž˜μ„œ 같은 νšŒμ˜μ‹€μ„ μ‚¬μš©ν•΄μ„œ μ„œλ‘œμ˜ 이슈λ₯Ό λ°”λ‘œλ°”λ‘œ κ³΅μœ ν•  수 μžˆλ„λ‘ ν–ˆμŠ΅λ‹ˆλ‹€.

πŸš€ 문제 ν•΄κ²° κ³Όμ •

πŸ“š κΈ°μˆ μŠ€νƒ

AOS

  • Kotlin Canvas Socket.IO Coil MVVM Retrofit Datastore Hilt Flow Jetpack Navigation DataBinding

BE

  • Typescript NestJS Naver Cloud Platform MySQL MongoDB CRDT OAuth

πŸ“‘ λ¬Έμ„œ

μ„€κ³„μ„œ ν”Όκ·Έλ§ˆ λ””μžμΈ ν”„λ‘œλ•νŠΈ 백둜그 μŠ€ν”„λ¦°νŠΈ 백둜그 κ·ΈλΌμš΄λ“œ λ£°
πŸ“’μ„€κ³„μ„œ: ν”„λ‘œμ νŠΈλ₯Ό μ‹œμž‘ν•˜λ©΄μ„œ λͺ©ν‘œμ™€ μ–΄λ–€ κΈ°λŠ₯을 κ΅¬ν˜„ν•  지 μ„€κ³„ν•œ λ‚΄μš© πŸ“•ν”Όκ·Έλ§ˆ λ””μžμΈ πŸ§Ύν”„λ‘œμ νŠΈ 백둜그: 전체 κΈ°λŠ₯에 λŒ€ν•œ 일정 섀계 μŠ€ν”„λ¦°νŠΈ 백둜그: 맀주 μž‘μ„±ν•˜λŠ” ꡬ체적인 일정 섀계 β›³MindSync νŒ€μ˜ κ·ΈλΌμš΄λ“œ λ£°
Tags socket io