Be happy, take a happic: ๐Ÿ“ธ

Overview


happic:

ํ•˜๋ฃจ ํ•œ ์ปท์˜ ์‚ฌ์ง„๊ณผ ํ‚ค์›Œ๋“œ ๋ถ„์„์ด ์•Œ๋ ค์ฃผ๋Š” ๋‚˜์˜ ํ–‰๋ณต, ํ•ดํ”ฝ

30th THE SOPT APP JAM
ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„ : 2021.07.02 ~ 2021.07.23



happic



Team happic iOS Developers

์ด์„ธ์ง„ ์œค์ˆ˜๋นˆ ๊ฐ•์Šนํ˜„
lsj8706 devxsby ZaidKang


Development Environment and Using Library

  • Development Environment



  • Library
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ ๋ชฉ์  Version Management Tool
Alamofire ์„œ๋ฒ„ ํ†ต์‹  5.6.1 SPM
SnapKit UI Layout 5.0.0 SPM
Then UI ์„ ์–ธ 3.0.0 SPM
Kingfisher ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ 7.2.4 SPM
Tabman ๋ทฐ ํŽ˜์ด์ € ์ปค์Šคํ…€ 2.12.0 SPM
pageboy ๋ทฐ ํŽ˜์ด์ € ์ปค์Šคํ…€ 3.6.2 SPM

  • framework
ํ”„๋ ˆ์ž„์›Œํฌ ์‚ฌ์šฉ ๋ชฉ์ 
UIKit UI ๊ตฌํ˜„


Coding Convention

โœจ Git Branch Convention

  • Branch Naming Rule
    • Issue ์ž‘์„ฑ ํ›„ ์ƒ์„ฑ๋˜๋Š” ๋ฒˆํ˜ธ์™€ Issue์˜ ๊ฐ„๋žตํ•œ ์„ค๋ช… ๋“ฑ์„ ์กฐํ•ฉํ•˜์—ฌ Branch ์ด๋ฆ„ ๊ฒฐ์ •
    • <Prefix>/<#IssueNumber>-<Description>
  • Commit Message Rule
    • [Prefix] : <Description>
  • Code Review Rule
    • ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋Š” ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ํ•œ๋‹ค.
    • ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋Š” ์ตœ๋Œ€ํ•œ ์ •์„ฑ๊ป ํ•œ๋‹ค.

โœจ Git Flow

1. ์ž‘์—… ๋‹จ์œ„๋ณ„ Issue ์ƒ์„ฑ : ๋‹ด๋‹น์ž, ๋ผ๋ฒจ, ํ”„๋กœ์ ํŠธ ์—ฐ๊ฒฐ 

2. Fork ๋ฐ›์€ ๋กœ์ปฌ ๋ ˆํฌ์—์„œ develop ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” : git pull (origin develop) 

3. Branch ์ƒ์„ฑ : git switch -c Prefix/#IssueNumber-description 
  > ์˜ˆ์‹œ) chore/#3-Project-Setting

4. ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ์ž‘์—… ํ›„ Add -> Commit -> Push -> Pull Request์˜ ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.
  
  Prefix์˜ ์˜๋ฏธ
  > [Feat] : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„
  > [Chore] : ๊ทธ ์ด์™ธ์˜ ์žก์ผ/ ๋ฒ„์ „ ์ฝ”๋“œ ์ˆ˜์ •, ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ, ํŒŒ์ผ ์ด๋™, ํŒŒ์ผ์ด๋ฆ„ ๋ณ€๊ฒฝ
  > [Add] : ์ฝ”๋“œ ๋ณ€๊ฒฝ ์—†๋Š” ๋‹จ์ˆœ ํŒŒ์ผ ์ถ”๊ฐ€, ์—์…‹ ๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€
  > [Fix] : ๋ฒ„๊ทธ, ์˜ค๋ฅ˜ ํ•ด๊ฒฐ, ์ฝ”๋“œ ์ˆ˜์ •
  > [Style] : ์ฝ”๋“œ ํฌ๋งทํŒ…, ์ฝ”๋“œ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ, ์ฃผ์„ ์ˆ˜์ •
  > [Docs] : README๋‚˜ WIKI ๋“ฑ์˜ ๋ฌธ์„œ ๊ฐœ์ •
  > [Refactor] : ์ „๋ฉด ์ˆ˜์ •์ด ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค
  > [Test] : ํ…Œ์ŠคํŠธ ๋ชจ๋“œ, ๋ฆฌํŽ™ํ† ๋ง ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€

5. Pull Request ์ž‘์„ฑ 
  - closed : #IssueNumber๋กœ ์ด์Šˆ ์—ฐ๊ฒฐ, ๋ฆฌ๋ทฐ์–ด ์ง€์ •

6. Code Review ์™„๋ฃŒ ํ›„ Pull Request ์ž‘์„ฑ์ž๊ฐ€ develop Branch๋กœ mergeํ•˜๊ธฐ
  - Develop Branch protection rules : Merge ์ „ ์ตœ์†Œ 1 Approve ํ•„์š”

7. ์ข…๋ฃŒ๋œ Issue์™€ Pull Request์˜ Label๊ณผ Project๋ฅผ ๊ด€๋ฆฌ

โœจ Naming & Code Convention

  • ํ•จ์ˆ˜, ๋ฉ”์„œ๋“œ : lowerCamelCase ์‚ฌ์šฉํ•˜๊ณ , ๋™์‚ฌ๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
  • ๋ณ€์ˆ˜, ์ƒ์ˆ˜ : lowerCamelCase ์‚ฌ์šฉํ•œ๋‹ค.
  • ํด๋ž˜์Šค, ๊ตฌ์กฐ์ฒด, enum, extension ๋“ฑ : UpperCamelCase ์‚ฌ์šฉํ•œ๋‹ค.
  • ๊ธฐ๋ณธ MVC ํด๋”๋ง ๊ตฌ์กฐ์— ๋”ฐ๋ผ ํŒŒ์ผ์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.
  • ํŒŒ์ผ, ๋ฉ”์„œ๋“œ, ํด๋ž˜์Šค ๋ช… ์•ฝ์–ด ์‚ฌ์šฉ ์ง€์–‘ํ•œ๋‹ค.
    • ์˜ˆ์‹œ) ViewController โ†’ VC (โŒ)
    • ์˜ˆ์‹œ) CollectionViewCell โ†’ CVC (โŒ)
    • ์˜ˆ์‹œ) loginButtonDidTap: UIButton -> loginBtnTapped (โŒ)
  • ์ดˆ๊ธฐ UI ๋ ˆ์ด์•„์›ƒ ์žก์•„์ค„๋•Œ๋งŒ configure ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ์ด์™ธ๋Š” set ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
    • ์˜ˆ์‹œ) func configureUI โ†’ func setUI (โŒ)
    • ์˜ˆ์‹œ) func setDelegate ... โ†’ func configureDelegate (โŒ)
  • ์ด์™ธ ๊ธฐ๋ณธ ๋ช…๋ช…๊ทœ์น™์€ Swift Style Guide, API Design Guidelines , Swift Style Guide๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค.
  • ์ƒ์†๋ฐ›์ง€ ์•Š๋Š” ํด๋ž˜์Šค๋Š” final ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ธ๋‹ค.
  • ๋‹จ์ผ ์ •์˜ ๋‚ด์—์„œ๋งŒ ์‚ฌ์šฉ๋˜๋Š” ํŠน์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„์€ private ์ ‘๊ทผ ์ œํ•œ์ž๋ฅผ ์ ๊ทน ์‚ฌ์šฉํ•œ๋‹ค.
  • ํ€ตํ—ฌํ”„๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•œ ๋งˆํฌ์—… ๋ฌธ๋ฒ•์„ ํ™œ์šฉํ•œ ์ฃผ์„์„ ์ ๊ทน ์‚ฌ์šฉํ•œ๋‹ค.
  • ์ด์™ธ๋Š” ์ปค์Šคํ…€ํ•œ SwiftLint Rule์„ ์ ์šฉํ•œ๋‹ค.
    • ์ œ์™ธ์‚ฌํ•ญ
    • trailing_whitespace
    • identifier_name
    • line_length
    • type_name

โœจ Project Foldering

Happic-iOS
โ”ฃ Base.lproj
โ”ƒ โ”— Main.storyboard
โ”ฃ Global
โ”ƒ โ”ฃ Literal
โ”ƒ โ”ฃ Base
โ”ƒ โ”ฃ Protocols
โ”ƒ โ”ฃ Util
โ”ƒ โ”ฃ Extension
โ”ƒ โ”ฃ Resource
โ”ƒ โ”ƒ โ”ฃ Assets.xcassets
โ”ƒ โ”ƒ โ”ƒ โ”ฃ AccentColor.colorset
โ”ƒ โ”ƒ โ”ƒ โ”ƒ โ”— Contents.json
โ”ƒ โ”ƒ โ”ƒ โ”ฃ AppIcon.appiconset
โ”ƒ โ”ƒ โ”ƒ โ”ƒ โ”— Contents.json
โ”ƒ โ”ƒ โ”ƒ โ”— Contents.json
โ”ƒ โ”ƒ โ”— Base.lproj
โ”ƒ โ”ƒ โ”ƒ โ”— LaunchScreen.storyboard
โ”ƒ โ”ฃ Supports
โ”ƒ โ”ƒ โ”ฃ AppDelegate.swift
โ”ƒ โ”ƒ โ”— SceneDelegate.swift
โ”ƒ โ”— UIComponent
โ”ฃ Network
โ”ƒ โ”ฃ APIService
โ”ƒ โ”ฃ Foundation
โ”ƒ โ”— Model
โ”ฃ Screens
โ”ƒ โ”ฃ Auth
โ”ƒ โ”ฃ CreateCharacter
โ”ƒ โ”ฃ CreateContents
โ”ƒ โ”ฃ HappicCapsule
โ”ƒ โ”ฃ HappicReport
โ”ƒ โ”ฃ HaruHappic
โ”ƒ โ”ฃ Home
โ”ƒ โ”ฃ Setting
โ”ƒ โ”— Tabbar
โ”— Info.plist



Task

๋Œ€๋ถ„๋ฅ˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์—ฌ๋ถ€ ๋‹ด๋‹น์ž
์˜จ๋ณด๋”ฉ ๋Ÿฐ์น˜์Šคํฌ๋ฆฐ ์œค์ˆ˜๋นˆ
  ์˜จ๋ณด๋”ฉ - ์œค์ˆ˜๋นˆ
ํšŒ์›๊ฐ€์ž… ์†Œ์…œ๋กœ๊ทธ์ธ ์œค์ˆ˜๋นˆ
  ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ ๋ทฐ ๊ฐ•์Šนํ˜„
  ์บ๋ฆญํ„ฐ ์„ ํƒ ๊ฐ•์Šนํ˜„
ํ™ˆ ์บ๋ฆญํ„ฐ ๋ทฐ ์ด์„ธ์ง„
ํ•˜๋ฃจํ•ดํ”ฝ ์‚ฌ์ง„, ํƒœ๊ทธ ๋ทฐ ์œค์ˆ˜๋นˆ
  ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ ์œค์ˆ˜๋นˆ
  ๊ฒŒ์‹œ๊ธ€ ์ƒ์„ธ๋ณด๊ธฐ ์œค์ˆ˜๋นˆ
ํ•ดํ”ฝ์บก์Š ์บก์Š๋ฝ‘๊ธฐ ๋ทฐ ์ด์„ธ์ง„
  ํ‘ธ์‹œ ์•Œ๋ฆผ ์ด์„ธ์ง„
ํ•ดํ”ฝ๋ ˆํฌํŠธ ์ „์ฒด๋ณด๊ธฐ ์ด์„ธ์ง„
  ํ‚ค์›Œ๋“œ ์ˆœ์œ„ ์ด์„ธ์ง„
  ์นดํ…Œ๊ณ ๋ฆฌ ์ˆœ์œ„ ์ด์„ธ์ง„
  ์›” ๊ธฐ๋ก ํšŸ์ˆ˜ ์ด์„ธ์ง„
์„ค์ • ์„ค์ • ๋ทฐ ์ด์„ธ์ง„



Be happy, Take a happic:


Group 2325@3x

Comments
  • [Chore] ํ•ดํ”ฝ ๋ ˆํฌํŠธ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋กœ์ง ์ˆ˜์ • (#216)

    [Chore] ํ•ดํ”ฝ ๋ ˆํฌํŠธ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋กœ์ง ์ˆ˜์ • (#216)

    ๐Ÿ’ฅ ๊ด€๋ จ ์ด์Šˆ

    • closed : #216

    ๐Ÿ’ฅ ๊ตฌํ˜„/๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ด์œ 

    • ํ•ดํ”ฝ ๋ ˆํฌํŠธ์˜ ๋ฒ ์ŠคํŠธ ํ•ดํ”ฝ ๋ชจ๋จผํŠธ์—์„œ ์„œ๋ฒ„ ํ†ต์‹  ๋ฐ์ดํ„ฐ์˜ ์ด์Šˆ๊ฐ€ ๋ฐœ์ƒํ•  ์‹œ ์•ฑ์ด ๊บผ์ง€๋Š” ๋ฌธ์ œ ์ˆ˜์ •์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋กœ์ง ์ˆ˜์ •

    ๐Ÿ’ฅ PR Point

    • ํ–‰๋ณตํ•˜์„ธ์š”!

    ๐Ÿ’ฅ ์ฐธ๊ณ  ์‚ฌํ•ญ

    ์„ธ์ง„โœจ ๐Ÿ“ฌ API ๐Ÿž BugFix ๐Ÿ“Œ HappicReport 
    opened by lsj8706 0
  • [Chore] Custom Month View ํ˜„์žฌ ๋‹ฌ ์ˆ˜์ • (#214)

    [Chore] Custom Month View ํ˜„์žฌ ๋‹ฌ ์ˆ˜์ • (#214)

    ๐Ÿ’ฅ ๊ด€๋ จ ์ด์Šˆ

    • closed: #214

    ๐Ÿ’ฅ ๊ตฌํ˜„/๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ด์œ 

    • ํ•˜๋ฃจํ•ดํ”ฝ, ํ•ดํ”ฝ๋ ˆํฌํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” Custom Month View์˜ ํ˜„์žฌ ๋‹ฌ์„ ์‹œ์Šคํ…œ์—์„œ ์ž๋™์œผ๋กœ ๋ฐ›์•„์˜ค๋„๋ก ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์ด์™ธ ์ž์ž˜ํ•œ ์ฝ”๋“œ ์ˆ˜์ •

    ๐Ÿ’ฅ ์ฐธ๊ณ  ์‚ฌํ•ญ

    | ํ•˜๋ฃจํ•ดํ”ฝ ์‚ฌ์ง„ ๋ทฐ | ํ•˜๋ฃจํ•ดํ”ฝ ํƒœ๊ทธ ๋ทฐ | ํ•ดํ”ฝ๋ ˆํฌํŠธ ๋ทฐ | | :---: | :---: | :---: | | Simulator Screen Shot - iPhone 13 mini - 2022-08-01 at 14 51 51 | Simulator Screen Shot - iPhone 13 mini - 2022-08-01 at 14 49 55 | Simulator Screen Shot - iPhone 13 mini - 2022-08-01 at 14 49 48 |

    ๐Ÿ”จ Refactor ์ˆ˜๋นˆโœจ ๐Ÿ’กFeature 
    opened by devxsby 0
  • [Feat] ๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜์‹œ ๋„์šฐ๋Š” ์–ผ๋Ÿฟ ๋ทฐ ์ถ”๊ฐ€ ๋ฐ ํ™ˆ ์ปจํŠธ๋กค๋Ÿฌ levelProgressView ์ด์Šˆ (#210)

    [Feat] ๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜์‹œ ๋„์šฐ๋Š” ์–ผ๋Ÿฟ ๋ทฐ ์ถ”๊ฐ€ ๋ฐ ํ™ˆ ์ปจํŠธ๋กค๋Ÿฌ levelProgressView ์ด์Šˆ (#210)

    ๐Ÿ’ฅ ๊ด€๋ จ ์ด์Šˆ

    • closed: #210

    ๐Ÿ’ฅ ๊ตฌํ˜„/๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ด์œ 

    • ๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜์‹œ ๋„์šฐ๋Š” ์–ผ๋Ÿฟ ๋ทฐ ์ถ”๊ฐ€ ๋ฐ ๋ทฐ ์—ฐ๊ฒฐ
    • levelProgressView๊ฐ€ ์ œ๋Œ€๋กœ ์ฑ„์›Œ์ง€์ง€ ์•Š๋Š” ์ด์Šˆ ํ•ด๊ฒฐ

    ๐Ÿ’ฅ ์ฐธ๊ณ  ์‚ฌํ•ญ

    | ์–ผ๋Ÿฟ ๋ทฐ ์˜ˆ์‹œ | ํ”„๋กœ๊ทธ๋ ˆ์Šค ๋ทฐ ์ด์Šˆ ํ•ด๊ฒฐ | | :---: | :---: | | Simulator Screen Shot - iPhone 13 mini - 2022-07-28 at 13 57 19 | Simulator Screen Shot - iPhone 13 mini - 2022-07-28 at 14 07 56 |

    ์„ธ์ง„โœจ ๐Ÿ“ฌ API ๐Ÿ”จ Refactor ์ˆ˜๋นˆโœจ 
    opened by devxsby 0
  • [Feat] ์†Œ์…œ ๋กœ๊ทธ์ธ ํ† ํฐ UserDefault์— ์ €์žฅ ๋ฐ ๊ธฐํƒ€ ์ˆ˜์ • (#203)

    [Feat] ์†Œ์…œ ๋กœ๊ทธ์ธ ํ† ํฐ UserDefault์— ์ €์žฅ ๋ฐ ๊ธฐํƒ€ ์ˆ˜์ • (#203)

    ๐Ÿ’ฅ ๊ด€๋ จ ์ด์Šˆ

    • closed: #203

    ๐Ÿ’ฅ ๊ตฌํ˜„/๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ด์œ 

    • jwt ํ† ํฐ์„ UserDefault์— ์ €์žฅ
    • ์ž๋™ ๋กœ๊ทธ์ธ ๊ตฌํ˜„
    • ๋กœ๊ทธ์ธ ํ”Œ๋กœ์šฐ ์ˆ˜์ •
    • ์บ๋ฆญํ„ฐ ๋ณ€๊ฒฝ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (์„ค์ • ๋ทฐ์—์„œ)
    • ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œ ํ›„ ํ•˜๋ฃจ ํ•ดํ”ฝ ๋ทฐ๋กœ ๋Œ์•„๊ฐ€๋„๋ก ์ˆ˜์ •
    • ํ•ดํ”ฝ ๋ ˆํฌํŠธ์˜ API ํ˜ธ์ถœ ์‹œ์  viewWillAppear๋กœ ์ˆ˜์ •

    ๐Ÿ’ฅ PR Point

    • pull ๋ฐ›๊ณ  ์‹œ๋ฎฌ์—์„œ ์•ฑ ์‚ญ์ œํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์‹คํ–‰ํ•ด๋ณด์‹ค๋ž˜์š”? ์ด๋ฏธ ํšŒ์›๊ฐ€์ž…์„ ํ•œ ์นด์นด์˜ค ๊ณ„์ •์ด๋ผ๋ฉด ํšŒ์›๊ฐ€์ž… ๋Œ€์‹  ๋กœ๊ทธ์ธ ๋ทฐ๊ฐ€ ๋ณด์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค.

    ๐Ÿ’ฅ ์ฐธ๊ณ  ์‚ฌํ•ญ

    Simulator Screen Recording - iPhone 13 mini - 2022-07-27 at 15 47 51

    ์„ธ์ง„โœจ ๐Ÿ“ฌ API ๐Ÿ”จ Refactor ์ˆ˜๋นˆโœจ ๐Ÿ“Œ Auth ๐Ÿ’กFeature 
    opened by lsj8706 0
  • [Feat] ์›” ์„ ํƒ ๋ทฐ ๋™๊ธฐํ™” ๋ฐ ํ„ฐ์น˜์˜์—ญ ์ˆ˜์ • (#184)

    [Feat] ์›” ์„ ํƒ ๋ทฐ ๋™๊ธฐํ™” ๋ฐ ํ„ฐ์น˜์˜์—ญ ์ˆ˜์ • (#184)

    ๐Ÿ’ฅ ๊ด€๋ จ ์ด์Šˆ

    • closed: #184

    ๐Ÿ’ฅ ๊ตฌํ˜„/๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ด์œ 

    • ์›” ์„ ํƒ ๋ทฐ ๋™๊ธฐํ™”
    • ์›” ์„ ํƒ ๋ทฐ ๋ฐ”๊นฅ ์˜์—ญ ํ„ฐ์น˜ ์‹œ hidden ์‹œํ‚ค๊ธฐ

    ๐Ÿ’ฅ PR Point

    ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ...

    ๐Ÿ’ฅ ์ฐธ๊ณ  ์‚ฌํ•ญ

    • ๋กœ๋”ฉํ•˜๋Š”๋ฐ ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ ค์„œ ์ธ๋””์ผ€์ดํ„ฐ ๋ฐ” ๋งŒ๋“ค๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋„ค์š”,,
    ๐Ÿ“ฌ API ์ˆ˜๋นˆโœจ ๐Ÿ“Œ HaruHappic 
    opened by devxsby 0
Owner
Team-happic:
๋งค์ผ์˜ ์ถ”์–ต์ด ๋‚˜์˜ ํ–‰๋ณต์ด ๋˜์–ด, ํ•ดํ”ฝ
Team-happic:
Happy DNS for Objective-C

Happy DNS for Objective-C ็”จ้€” ่ฐƒ็”จ็ณป็ปŸๅบ•ๅฑ‚Dns่งฃๆžๅบ“๏ผŒๅฏไปฅไฝฟ็”จ114 ็ญ‰็ฌฌไธ‰ๆ–นdns่งฃๆž๏ผŒๅฏไปฅไฝฟ็”จ Doh ๅ่ฎฎ็š„ Dns ่งฃๆžๆ–นๆกˆ๏ผŒไนŸๅฏไปฅ้›†ๆˆdnspod็ญ‰httpdnsใ€‚ๅฆๅค–ไนŸๆœ‰ไธฐๅฏŒ็š„hosts ๅŸŸๅ้…็ฝฎใ€‚ ๅฎ‰่ฃ… ้€š่ฟ‡CocoaPods pod "HappyDNS"

Qiniu Cloud 475 Dec 28, 2022
Gapo challenge happy coding ^^

Gapo Challenge Implement Notification List screen Demo on simulator Development Language: IDE: Xcode (version 13.2.1) iOS Deployment target: from vers

null 1 May 27, 2022
A Swift library to take the power of UIView.animateWithDuration(_:, animations:...) to a whole new level - layers, springs, chain-able animations and mixing view and layer animations together!

ver 2.0 NB! Breaking changes in 2.0 - due to a lot of requests EasyAnimation does NOT automatically install itself when imported. You need to enable i

Marin Todorov 3k Dec 27, 2022
Easily take a photo or video or choose from library

FDTake Easily take a photo or video or choose from library ?? Author's tip jar: https://amazon.com/hz/wishlist/ls/EE78A23EEGQB Usage To run the exampl

William Entriken 322 Nov 30, 2022
This is my first SwiftUI project, as I decided not to release it I made the codebase available here for anyone to take a look at.

Sunshine This is my first SwiftUI project, as I decided not to release it to the App Store. I made the codebase available here for anyone to take a lo

Maxime Heckel 20 Dec 14, 2022
Each step you take reveals a new horizon. You have taken the first step today.

The story Seeing the animations behind Paper, or the transitions behind Mail, being in a world of flat design and transitions, user interaction, app b

Ramon Gilabert 152 Nov 3, 2022
BottomSheet makes it easy to take advantage of the new UISheetPresentationController in SwiftUI with a simple .bottomSheet modifier on existing views.

BottomSheet makes it easy to take advantage of the new UISheetPresentationController in SwiftUI with a simple .bottomSheet modifier on existing views.

Adam Foot 341 Dec 15, 2022
Easily take a photo or video or choose from library

FDTake Easily take a photo or video or choose from library ?? Author's tip jar: https://amazon.com/hz/wishlist/ls/EE78A23EEGQB Usage To run the exampl

William Entriken 322 Nov 30, 2022
An iOS application for remembering to take your medications. (Pronounced like the letters R-X.)

Arex An iOS application for remembering to take your medications. Downloading The following commands will set up an Arex checkout. You'll need Xcode o

Alexsander Akers 99 Jun 29, 2022
Take home task from one company developed on VIPER, UI Through code and splash from plist

HelloFresh Dev Team - Mobile iOS Developer Test Hello! Thank you for taking the time to try our iOS test. The goal of the test is to assess your codin

Jawad Ali 4 Aug 13, 2022
iOS Tech Challenge - Take Home Challenge

iOS Tech Challenge - Take Home Challenge Thank you for your interest in taking the iOS Tech Challenge. Preparation Please, compile the project in Xcod

null 0 Oct 18, 2021
MemeMe, students will create an app that enables a user to take a picture, and add text at the top and bottom to form a meme

With this first version of MemeMe, students will create an app that enables a user to take a picture, and add text at the top and bottom to form a meme. The user will be able to share the photo on Facebook and Twitter and also by SMS or email.

Marcos 0 Dec 11, 2021
This simple app helps to understand whether customer eligible or not to take a loan.

Loan Agent Description This simple app helps to understand whether customer eligible or not to take a loan. Simplifications Several compromises were n

Andrius 0 Oct 31, 2021
Camera that can take AR pictures and movies

ARCamera. Camera that can take AR pictures and movies. You can also learn basic functions of ARKit+SceneKit. How to build 1, Download or Clone this pr

MLBoy 2 Apr 7, 2022
PowerUp is an educational choose-your-own-adventure game that utilizes a users uploaded curriculum to empower pre-adolescents to take charge of their reproductive health.

PowerUp is an educational choose-your-own-adventure game that utilizes a users uploaded curriculum to empower pre-adolescents to take charge of their reproductive health. This is the iOS version of the game.

AnitaB.org Open Source 39 Sep 26, 2022
A Lightweight Privacy Oriented Ecosystem to take care of your eyes

EyeWatch A Lightweight Privacy Oriented Ecosystem to take care of your eyes Table of Contents About the Project Project Demo Tools and Technologies Us

null 1 Jan 16, 2022
An application that will help you to take care of your pet!

4Pets This app will revolutionize the way you treat your lovely pet! Info This application was developed at BEPiD, hosted by IFCE Idea At the beginnin

Felipe Borges 18 Dec 8, 2022
PostsExam - A Valhalla take home exam for Mobile App Developer

Posts - iOS A Valhalla take home exam for Mobile App Developer - iOS position Cr

Val Moratalla 0 Mar 24, 2022
TakeHomeChallenge - iOS Tech Challenge - Take Home Challenge

iOS Tech Challenge - Take Home Challenge Thank you for your interest in taking t

Michael 0 Feb 1, 2022
Video mp4 record save display - How to Take , Save and Display a .mp4 Video

Technicalisto How to Take , Save and Display a .mp4 Video Add your design with v

Aya Baghdadi 2 Aug 7, 2022